系统图盘是应用程序经常用到的一个控件,当应用程序需要长时间存在的时候,这个控件会变得非常有用,比如,窗口隐藏,显示,关于、关闭等接口都可以放在图盘中处理,今天与到一个问题,需求是这样的:只需要显示图盘,不需要主窗口,提示信息需要动态的改变
看似很简单的一个问题,我自己试了试之后,也倒腾了好一会儿,先看我的第一版程序,代码如下
1 QSystemTrayIcon *tc = new QSystemTrayIcon; 2 3 tc->setToolTip(QStringLiteral("消息提示")); 4 5 tc->setIcon(style()->standardIcon(QStyle::SP_TitleBarNormalButton)); 6 7 tc->show(); 8 9 QMenu * menu = new QMenu; 10 11 QAction * aboutAct = menu->addAction(QStringLiteral("关于")); 12 13 connect(aboutAct, &QAction::triggered, this, []{ 14 15 QWindow * w = new QWindow; 16 17 w->show(); 18 19 }); 20 21 tc->setContextMenu(menu);