Название: Иконка в трее Отправлено: viktand от Январь 02, 2014, 08:56 Здравствуйте.
Написал небольшую программу. Она должна сворачиваться в трей. Использовал QSystemTrayIcon. Все замечательно работает. Но иконка в трее появляется левом верхнем углу (трей сверху), а не справа, где все системные иконки. Как можно ее передвинуть к другим? Иконка - буква "F" на картинке (http://itmages.com/image/view/1411219/3a893720) Название: Re: Иконка в трее Отправлено: maint от Январь 02, 2014, 09:19 телепаты в отпуске. Не информации по операционной системе и кода, сказать нечего
Название: Re: Иконка в трее Отправлено: Bepec от Январь 02, 2014, 10:59 И добавить то нечего ^.^
Название: Re: Иконка в трее Отправлено: viktand от Январь 02, 2014, 11:59 Ubuntu 13.04, Unity.
Программа на Qt5.1 Вопрос-то, собственно, в том, существует ли метод (или свойство), определяющий положение иконки в трее (типа setGemetry). Почему можно узнать координаты (Geometry) иконки, а изменить их нельзя? Предполагаю, что трей - он типа стека, куда сваливаются иконки на первое свободное место, поэтому и не управляется. Но у меня оно почему-то с другой стороны. Код программы взят в основном из примера про QSystemTraiIcon и он работает без замечаний. Только иконка не там. mainwindow.cpp: Код:
Попробовал запустить программу на нетбуке с Убунтой. Иконка выскочила вообще ниже трея и также слева. Но функционально все работает. Попробовал на еще одной Убунте (12.04), тоже косяк. Может Qt c Uniti в этой части не дружит? Название: Re: Иконка в трее Отправлено: Bepec от Январь 02, 2014, 13:14 Проблема скорее всего не в Qt, а в вашей ОС/настройках и прочем. Впрочем опровергнуть мои слова может кто-нибудь ещё, у кого есть аналогичная ОС.
PS Qt не управляет треем. Функционал QSystemTrayIcon - кроссплатформенно поместить иконку в трей. Если у вас что-то съезжает, не тудыть втыкается - проблема в системных настройках. Название: Re: Иконка в трее Отправлено: maint от Январь 02, 2014, 13:39 юнити вообще загадочная штука, поставьте в виртуалке какой-нибудь kubuntu. Гляньте что получится. На самом деле не очень понятно, почему на стандартной убунту, не gtk использовать, да не мое дело. Пробуйте
Название: Re: Иконка в трее Отправлено: viktand от Январь 02, 2014, 16:48 На Qt4.8 иконка вообще не появляется. Geometry() дает координаты -1;-1, т.е. за пределами экрана.
Да, наверно дело в gtk. На самом деле не очень понятно, почему на стандартной убунту, не gtk использовать, да не мое дело. Пробуйте Ради одной иконки с gtk разбираться не хочется. Однажды делал программу на gtk, уперся в ошибку сегментации, которая возникала не всегда, а иногда. Плюнул, переписал все на Qt, так и остался на нем. Название: Re: Иконка в трее Отправлено: Alex Custov от Январь 02, 2014, 16:59 Цитировать Да, наверно дело в gtk. Gtk тут ни при чём, если иконка появляется отдельно, то трей просто не обнаруживается. Название: Re: Иконка в трее Отправлено: maint от Январь 02, 2014, 17:15 допустим gtk не причем, в icewm, иногда глюк, отдельно иконка, в отдельном окне. Размещается как WM сунул. У вас DE. Где то ошибка. Попробуйте скомпилить пример, с которого брали и посмотреть.Полностью.
Название: Re: Иконка в трее Отправлено: viktand от Январь 03, 2014, 02:41 Скомпилировал стандартный пример из комплекта Qt-Creator'а. Работает точно также.
Видимо имеет место легкая несовместимость c Убунту на Юнити. Название: Re: Иконка в трее Отправлено: Alex Custov от Январь 03, 2014, 12:49 Скомпилировал стандартный пример из комплекта Qt-Creator'а. Работает точно также. Видимо имеет место легкая несовместимость c Убунту на Юнити. В терминале никаких ошибок во время выполнения нет? Название: Re: Иконка в трее Отправлено: viktand от Январь 04, 2014, 12:32 В том и проблема, что никаких ошибок не видно. Все ровно работает.
Название: Re: Иконка в трее Отправлено: Fregloin от Январь 04, 2014, 14:51 У меня в xubuntu 13.4 вообще иконка в трее не отображается.
Название: Re: Иконка в трее Отправлено: Dexel от Январь 17, 2014, 01:21 Если пример, в котором 3 рисунка переключаются в трэе, то он работает идеально на Kubuntu, Lubuntu, Xubuntu версий 13.10.
Название: Re: Иконка в трее Отправлено: Fregloin от Январь 17, 2014, 15:18 5й qt? дайте пожалуйста исходник что бы я у себя проверил.
Название: Re: Иконка в трее Отправлено: devnikor от Январь 26, 2014, 22:42 Код: sudo apt-get install sni-qt Название: Re: Иконка в трее Отправлено: glum_psyche от Декабрь 17, 2014, 10:29 Конечно, тема старая, но добавлю сюда...
https://bugreports.qt-project.org/browse/QTBUG-31762 Полагают, что проблема с тем что ОС на GTK+ при выводе иконок в трей предлагается использовать GLIB, а не D-Bus, как это делает Qt. Надеюсь, кому-то поможет... |