QSystemTrayIcon не отображается

0

Есть похожие вопросы к этому, но они не решают мою проблему.

У меня просто простой класс MainWindow, который появляется при запуске. Конструктор содержит этот код:

QWidget* centralWidget = new QWidget(this);
this->setCentralWidget( centralWidget );

QSystemTrayIcon a;
a.setIcon( QIcon::fromTheme("edit-undo") );
a.setVisible( true );
a.show();
a.showMessage( tr( "Title" ), tr( "Message - Test" ) );

Это просто окно с центральной версией для более поздней версии. Я просто хотел проверить QSystemTrayIcon, но он не отображается. Значок на 100% правильный, так что это не проблема.

Кто-нибудь знает, что случилось? Я нахожусь в системе Linux (Ubuntu 12.04).

Теги:
qt
system-tray

1 ответ

2
Лучший ответ

QSystemTrayIcon не является указателем.

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

Решение: сделайте личный указатель своего класса и соответствующим образом обработайте его уничтожение при выходе.

  • 0
    Спасибо, сработало! Это было глупо с моей стороны :(
  • 1
    Не беспокойся, продолжай и тренируйся;)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню