Подтвердить что ты не робот

Как установить значок приложения в проекте на основе Qt?

Как вы устанавливаете значок приложения для приложения, созданного с помощью Qt? Есть ли простой способ? Это проект на основе qmake.

4b9b3361

Ответ 1

Для Qt 5 этот процесс автоматизируется с помощью qmake. Просто добавьте в файл проекта следующее:

win32:RC_ICONS += your_icon.ico

Генерация файла автоматического ресурса также использует значения следующих переменных qmake: VERSION, QMAKE_TARGET_COMPANY, QMAKE_TARGET_DESCRIPTION, QMAKE_TARGET_COPYRIGHT, QMAKE_TARGET_PRODUCT, RC_LANG, RC_CODEPAGE.

Для Qt 4 вам нужно сделать это вручную. В Windows вам нужно создать файл .rc и добавить его в свой проект (.pro). Файл RC должен выглядеть следующим образом:

IDI_ICON1 ICON DISCARDABLE "path_to_you_icon.ico"

Запись .pro также должна быть специфичной для Win32, например:

win32:RC_FILE += MyApplication.rc

Ответ 2

Еще один способ сделать это. Проверено в Linux (Qt 4.8.6) и Windows (Qt 5.6):

1) Добавьте файл значка в папку проекта;

2) В основном вызове метода setWindowIcon() функции. Например:

QApplication a(argc, argv);
a.setWindowIcon(QIcon("./images/icon.png"));

Ответ 3

Чтобы расширить ответ Роба, вы можете установить значок приложения для macOS, добавив и изменив следующую строку в файле .pro.

macx: ICON = <app_icon>.icns

Обратите внимание, что переменная ICON qmake предназначена только для macOS.

Для Windows используйте

  • RC_ICONS = <app_icon>.ico если вы прикрепляете файл .ico
  • или RC_FILE = <app_icon>.rc если вы хотите прикрепить свой значок через файл .rc. (Обязательно добавьте IDI_ICON1 ICON DISCARDABLE "myappico.ico" в файл rc. Отступ не мой.)

Для дальнейшего чтения см. Настройка значка приложения.

Ответ 5

Теперь, когда Qt обновлен до 5.0.1, есть новый способ добавить значок приложения. Во-первых, вам нужно подготовить файл ресурсов, названный .qrc

1) Без Qt Designer, я предполагаю, что существует экземпляр QMainWindow, имя которого MainWin. Вы можете использовать:

QIcon icon(":icon/app.icon"); 
MainWin.setWindowIcon(icon);

2) С помощью Qt Designer вы можете изменить свойство QMainWindow. Выберите ресурс значка с .qrc и вставьте его в строку windowIcon.

Вышеуказанный метод может быть использован в Qt4.7, Qt4.8.x.