QT的托盤圖標類是QSystemTrayIcon
ide
要實現酷狗那種單擊關閉按鈕,直接轉換成托盤圖標,而後點擊托盤圖標又能夠恢復。函數
首先關閉按鈕實現托盤圖標不難。this
聲明一個托盤圖標類:spa
QSystemTrayIcon *trayIcon;
code
trayIcon=new QSystemTrayIcon;orm
而後添加相應的圖標和提示信息:事件
this->hide();//這裏是隱藏主窗口ip
trayIcon->setIcon(QIcon(":/new/prefix1/image/tray.jpg"));
trayIcon->show();
trayIcon->setToolTip("托盤圖標");
trayIcon->showMessage("主人","我在這裏哦",QSystemTrayIcon::Information,5000);
接下來要實現雙擊托盤圖標顯示窗口: 須要監測QSystemTrayIcon::ActivationReason
咱們新建一個槽來實現:it
void player::tuopan(QSystemTrayIcon::ActivationReason reason)io
{
switch(reason) {
case QSystemTrayIcon::DoubleClick:
this->showNormal();
break;
default:
break;
}
}
固然有必要將雙擊事件和槽相鏈接: connect ( trayIcon , SIGNAL (activated ( QSystemTrayIcon :: ActivationReason )), this ,
SLOT(tuopan(QSystemTrayIcon::ActivationReason)));//將托盤圖標和雙擊事件關聯
簡單的函數和代碼,就能夠實現酷狗的效果了。