QSystemTrayIcon没有显示出来

时间:2013-10-10 14:54:48

标签: c++ qt system-tray

这个问题也存在类似问题,但它们并没有解决我的问题。

我只有一个简单的MainWindow类,它出现在start。构造函数包含以下代码:

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" ) );

它只是一个带有centralWidget的窗口供以后使用。我只想测试QSystemTrayIcon,但它没有显示。图标是100%正确的,所以这不是问题。

任何人都知道什么是错的?我在Linux系统上(Ubuntu 12.04)。

1 个答案:

答案 0 :(得分:2)

QSystemTrayIcon不是指针。

因此,一旦离开构造函数的主体,它就会被破坏。

解决方案:创建类的私有指针成员,并在退出时正确处理其破坏。