Добавление иконки на панель инструментов в Qt 5.3

Я работаю над проектом, использующим Qt 5.3 и C++ 11.

Я унаследовал полубольшую кодовую базу и никогда раньше не работал с Qt, поэтому большую часть кодирования я делаю для этого, изменяя часть более раннего кода для моих целей.

В настоящее время мне поручено добавить несколько значков на панель инструментов. Моим товарищам по команде удалось заставить значки появляться в сборке Linux, но это не появится в OS X 10.10.

В настоящее время мой.qrc выглядит так

<RCC>
  <qresource prefix="/icons/tango">
    <file alias="index.theme">icons/tango/index.theme</file>
    // here are some currently working icons
    // Below are the icons I'd like to add
    <file alias="disk.png">icons/tango/led_icons/disk.png</file>
    <file alias="folder.png">icons/tango/led_icons/folder.png</file>
    <file alias="grid.png">icons/tango/led_icons/grid.png</file>
    <file alias="page.png">icons/tango/led_icons/page.png</file>
    <file alias="shape_flip_vertical.png">icons/tango/led_icons/shape_flip_vertical.png</file>
  </qresource>
</RCC>

и я установил значки следующим образом

ui->actionV->setIcon(QIcon::fromTheme(":/icons/tango/folder.png"));
ui->actionW->setIcon(QIcon::fromTheme(":/icons/tango/disk.png"));
ui->actionX->setIcon(QIcon::fromTheme(":/icons/tango/shape_flip_vertical.png"));
ui->actionY->setIcon(QIcon::fromTheme(":/icons/tango/page.png"));
ui->actionZ->setIcon(QIcon::fromTheme(":/icons/tango/grid.png"));

По какой-то причине после строительства я не вижу того, чего ожидаю.

Кто-нибудь может дать мне знать, что я делаю не так? Я, конечно, не думаю, что в Qt есть ошибка, я думаю, что просто упускаю из виду некоторые мелкие детали.

1 ответ

Решение

Я нахожу путь к псевдониму вашего файла и путь, который вы используете, чтобы установить свой значок другим. Это должно быть как:ui->actionV->setIcon(QIcon::fromTheme(":/icons/tango/led_icons/folder.png"));

Вам не хватает led_icons на вашем пути.

Я думаю, это должно сработать.

Другие вопросы по тегам