关于Qt系统托盘图标,右键菜单的建立
当使用系统托盘的时候,总是希望通过右键来实现一些快捷的操作,这就对图标的右键菜单提出了需求。
建立右键菜单需要的类有QMenu和QAction两个。
其中,QMenu主要是用于给右键菜单添加一个容器。然后可以用这个容器来装我们所需要的操作,也就是QAction产生的对象,
组成右键菜单的方法如下:
disconnectAction = new QAction(“d&isconnect”, this);//创建一个Action并设置显示内容和快捷方式
connect(disconnectAction, SIGNAL(triggered()), this, SLOT(on_pushButton_2_clicked()));//为Action建立一个链接
restoreAction = new QAction("r&estore",this);
connect(restoreAction, SIGNAL(triggered()), this, SLOT(showNormal()));
quitAction = new QAction("q&uit"), this);
connect(quitAction, SIGNAL(triggered()), this, SLOT(quitClient()));
建立好所有的Action和链接后,将Action添加到Qmenu的容器中。
trayMenu = new QMenu;
trayMenu->addAction(disconnectAction);
trayMenu->addAction(restoreAction);
trayMenu->addSeparator();
trayMenu->addAction(quitAction);
设置特定的容器为系统托盘当前的容器(将刚才建立的菜单添加到系统托盘)
tray->setContextMenu(trayMenu);
到此,一个好用的系统托盘图标右键菜单就实现了。