Странное дело, после нажатия на "OK" в диалоге aboutQt() приложение закрывается =) Может быть потому, что в приложении нет ни одного QWidget?
Точка входа в приложение:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
TrayIcon trayIcon;
trayIcon.show();
return app.exec();
}
TrayIcon.h:
class TrayIcon: public QSystemTrayIcon
{
Q_OBJECT
public:
TrayIcon(QWidget *parent = 0);
~TrayIcon();
private:
QAction *bugAction;
QMenu *trayIconMenu;
};
TrayIcon.cpp:
TrayIcon::TrayIcon(QWidget *parent): QSystemTrayIcon(QIcon(":/Images/SomeIcon.png"), parent)
{
bugAction = new QAction("Bug...", this);
connect(bugAction, SIGNAL(triggered()), qApp, SLOT(aboutQt()));
trayIconMenu = new QMenu();
trayIconMenu->addAction(bugAction);
setContextMenu(trayIconMenu);
}
TrayIcon::~TrayIcon()
{
delete trayIconMenu;
}