Я собрал wxWidgets 2.9.3 (на данный момент я должен придерживаться этой версии) под Ubuntu 12.10, и я не могу использовать wxTaskBarIcon
учебный класс. Пример, поставляемый с wxWidgets, компилируется и запускается, но сам значок не отображается на самой панели задач. Я проверил мой конфиг, и я знаю, что компиляция библиотек wxWidgets была выполнена с настройкой по умолчанию (которая «да» для поддержки панели задач).
Есть идеи, как заставить это работать? Эта проблема связана с версией wxWidgets и / или Ubuntu?
Редактировать:
Это определенно не связано с версией wxWidgets (проверено в wx 2.8, 2.9.3, 2.9.4).
Изменить 2:
В случае, если это имеет значение:
Система на VirtualBox 4.2.6, установлена со всеми настройками по умолчанию. Я устанавливаю обновления как минимум раз в неделю.
Под Ubuntu с 11.04 панель задач управляется Unity, которая по умолчанию не позволяет всем программам размещать свои иконки там. Вы должны внести в белый список свое приложение, чтобы оно могло получить доступ к панели задач. Вот где я нашел ответ изначально:
http://ubuntuforums.org/showthread.php?t=1737589
В основном вы должны позвонить:
gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Mumble', 'Wine', 'Skype', 'YOUR_APPLICATION']"
Затем выйдите из системы, войдите в систему. Это добавит YOUR_APPLICATION в белый список Unity.Panel. Помните, что в этом случае вы также должны перечислить элементы, которые были в этом списке заранее. Вы можете проверить, как выглядит белый список, позвонив:
gsettings get com.canonical.Unity.Panel systray-whitelist
В моем случае (так как я работаю над средой разработки) я просто установил его на "['all']"
, Это позволит всем приложениям получить доступ к панели задач.
Имейте в виду, что в Ubuntu такая поддержка будет прекращена, и в будущем вам следует вместо этого использовать библиотеку AppIndicator для достижения этой цели. Это означает, что wxTaskBarIcon не будет работать даже с белым списком, если он не будет использовать библиотеку AppIndicator.
Источник: http://www.webupd8.org/2013/02/unity-notification-area-systray.html
Других решений пока нет …