Значок Unity Launcher не устанавливается приложением Qt

Я пытаюсь заставить свое приложение Qt отображать значок в панели запуска Unity, но оно не работает. В коде я просто использую:

qApp->setWindowIcon(QIcon("path/to/icon.png"));

но это ничего не делает. Я также пытался установить значок прямо в главном окне, но это тоже не помогает.

Любая идея, в чем может быть проблема?

PS: я проверил путь к значку, и он правильный.


person laurent    schedule 11.12.2012    source источник
comment
Несколько месяцев назад я думал над тем же вопросом. Все еще интересно...   -  person totymedli    schedule 11.12.2012
comment
Тег единства предназначен для Microsoft Unity. Пожалуйста, не злоупотребляйте им.   -  person Lex Li    schedule 15.12.2012
comment
Вы решили это? Я также пытаюсь настроить значок для своего приложения pyside2 с помощью setWindowIcon, но он по-прежнему отображает знак вопроса на рабочем столе Unity. Не уверен, что это работает для гнома.   -  person Blind0ne    schedule 07.12.2020


Ответы (2)


Не зная деталей единства, я почти уверен, что вам придется создать и установить файл .desktop со значком в нем. См., например, здесь. Что бы вы ни установили во время выполнения, средство запуска не может знать об этом до запуска приложения, поэтому ему потребуется информация из внешней конфигурации.

person Frank Osterfeld    schedule 12.12.2012
comment
Я знаком с файлами .desktop, но что, если я хочу динамически менять значок во время выполнения, используя setWindowIcon. Он отключен в Unity? Поможет ли использование файла рабочего стола? - person laurent; 13.12.2012

Чтобы включить кодирование изображений в Windows (не в Ubuntu), я поместил папку QT\4.8.3\plugins\imageformats рядом с моим приложением. Я думаю, вам стоит попробовать то же самое.

person Ruslan F.    schedule 11.12.2012
comment
Я пробовал это, но это не помогло. Я думаю, что приложение уже поддерживает формат изображения, поскольку QIcon не выдает никаких ошибок. - person laurent; 13.12.2012
comment
поэтому вы должны иметь в какой-то папке app.bin и папку imageformats\ - person Ruslan F.; 13.12.2012