Qt创建系统托盘菜单

Qt创建系统托盘菜单

//菜单 
createMenu(); 
//判断系统是否支持托盘图标 
if(!QSystemTrayIcon::isSystemTrayAvailable()) 
{    
     return; 
}
//实例QSystemTrayIcon 
myTrayIcon = new QSystemTrayIcon(this); 
//设置图标 
myTrayIcon->setIcon(QIcon(":/new/prefix1/ico")); 
//鼠标放托盘图标上提示信息 
myTrayIcon->setToolTip("Qt托盘图标功能"); 
//设置消息 
myTrayIcon->showMessage("托盘","托盘管理",QSystemTrayIcon::Information,10000); 
//托盘菜单 
myTrayIcon->setContextMenu(myMenu); 
//显示 
myTrayIcon->show();
//绘制菜单 
void MainWindow::createMenu() 
{    
     restoreWinAction = new QAction("恢复(&R)",this);    
     quitAction = new QAction("退出(&Q)",this);    
     //恢复    
     connect(restoreWinAction,SIGNAL(triggered()),this,SLOT(showNormal()));    
     //退出    
     connect(quitAction,SIGNAL(triggered()),qApp,SLOT(quit()));
     myMenu = new QMenu((QWidget*)QApplication::desktop());    
     //添加菜单    
     myMenu->addAction(restoreWinAction);    
     //分隔符    
     myMenu->addSeparator();    
     myMenu->addAction(quitAction); 
}
//恢复 
void MainWindow::showNormal() 
{    
     this->show(); 
}
//点击最小化按钮隐藏界面 
void QWidget:: changeEvent (QEvent *e) 
{    
     if((e->type()==QEvent::WindowStateChange)&&this->isMinimized())    
     {
	//QTimer::singleShot(100, this, SLOT(hide()));        
	this->hide();    
     } 
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值