这个问题也存在类似问题,但它们并没有解决我的问题。
我只有一个简单的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)。
答案 0 :(得分:2)
QSystemTrayIcon不是指针。
因此,一旦离开构造函数的主体,它就会被破坏。
解决方案:创建类的私有指针成员,并在退出时正确处理其破坏。