我已经创建了一个通知系统,该系统利用QSystemTrayIcon来提醒用户。我的问题是每次用户收到通知时都会创建一个新图标,因此系统托盘最终会显示这些图标。
我在Linux机器上开发程序,问题不在这里发生。但是,我在Windows 7上构建程序,这是程序实际使用的地方,也是问题出现的地方。这使我的测试变得棘手,因为我必须经历相当漫长的过程甚至在Windows上运行程序。因此,我有点希望有人能够发现问题并告诉我到底出了什么问题,但我感谢您的任何意见,所以如果您有任何想法请告诉我们。
我的代码:
QSystemTrayIcon* notiTray = new QSystemTrayIcon(this);
notiTray->setIcon(QIcon(":/icon.png"));
notiTray->setVisible(true);
notiTray->showMessage("Notifications, "You have new notifications", QSystemTrayIcon::Information, 60000);
notiTray->show();
QApplication::alert(this, 1000);
此代码位于函数内部的if语句中,该函数每5秒调用一次以检查新通知。
我猜这可能是因为每次发出通知都会产生一个新的SystemTrayIcon,但我不是100%而且我希望有人能够证实这一点以免我继续通过在Windows上测试它的糟糕过程。
感谢您的帮助!