当前位置: 首页 > wzjs >正文

福建省鑫通建设有限公司网站网站首页的功能

福建省鑫通建设有限公司网站,网站首页的功能,做新年公告图片的网站,网站 信用卡支付接口文章目录 托盘的功能QSystemTrayIcon 类QSystemTrayIcon类的常用函数代码实现 托盘的功能 GUI 程序,如果想要实现当最小化时,程序从任务栏消失,在系统托盘显示一个图标,表示此程序,并能在托盘内通过双击或者菜单使程序…

文章目录

    • 托盘的功能
    • QSystemTrayIcon 类
    • QSystemTrayIcon类的常用函数
    • 代码实现


托盘的功能

GUI 程序,如果想要实现当最小化时,程序从任务栏消失,在系统托盘显示一个图标,表示此程序,并能在托盘内通过双击或者菜单使程序界面恢复。
在这里插入图片描述


QSystemTrayIcon 类

托盘功能实现主要使用的类:QSystemTrayIcon
QSystemTrayIcon 是主要操作系统托盘的操作类,通过此类,可以在托盘显示指定程序的图标,响应用户鼠标的单击、双击、显示指定消息、显示菜单等。此类中有两个枚举类型,分别如下:

在这里插入图片描述


QSystemTrayIcon类的常用函数

1、void setIcon(const QIcon& icon);

主要用来设置托盘中的图标,通常与QIcon结合使用:

QIcon icon = QIcon(":/images/app.png");m_systemtray->setIcon(icon);

在这里插入图片描述

2、void setToolTip(const QString &tip);

设置鼠标悬停时的提示语;

m_systemtray->setToolTip("Test!!!!!");

在这里插入图片描述

3、void showContextMenu(QMenu *menu);

获取鼠标点击事件,当点击图标弹出的菜单;

m_systemtray->setContextMenu(m_menu);

在这里插入图片描述

4、void show();

功能:在系统托盘中显示图标;

 m_systemtray->show();

5、void showMessage();

系统提示消息;

void Widget::showMessage()
{
/*
void showMessage(const QString &title, const QString &msg,QSystemTrayIcon::MessageIcon icon = QSystemTrayIcon::Information, int msecs = 10000);
*/m_systemtray->showMessage("Information",//消息窗口标题"There is an message!",//消息内容QSystemTrayIcon::MessageIcon::Information,//消息窗口图标5000);//消息窗口显示时长
}

代码实现

widget.h

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QMenu>
#include <QAction>
#include <QSystemTrayIcon>QT_BEGIN_NAMESPACE
namespace Ui {
class Widget;
}
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();private slots://显示主界面void showWindow();//鼠标点击显示系统提示消息void showMessage();//显示托盘菜单void showMenu();//退出应用void quit();//获取当前鼠标点击事件void activeTray(QSystemTrayIcon::ActivationReason reason);//点击按钮隐藏窗口到系统托盘void on_pushButton_clicked();private:Ui::Widget *ui;//创建一个托盘QSystemTrayIcon *m_systemtray;//创建一个托盘菜单QMenu *m_menu;//定义菜单事件QAction *m_action1;QAction *m_action2;QAction *m_action3;};
#endif // WIDGET_H

widget.cpp

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);this->setWindowFlags(Qt::FramelessWindowHint);//定义一个托盘m_systemtray = new QSystemTrayIcon(this);//定义一个菜单m_menu = new QMenu(this);//定义菜单事件m_action1 = new QAction(m_menu);m_action2 = new QAction(m_menu);m_action3 = new QAction(m_menu);//给菜单事件命名m_action1->setText("Show Window");m_action2->setText("Show Message");m_action3->setText("quit");//将菜单事件添加到菜单中m_menu->addAction(m_action1);m_menu->addAction(m_action2);m_menu->addAction(m_action3);//关联触发事件connect(m_action1 , &QAction::triggered , this , &Widget::showWindow);connect(m_action2 , &QAction::triggered , this , &Widget::showMessage);connect(m_action3 , &QAction::triggered , this , &Widget::quit);//将菜单添加到托盘对象中m_systemtray->setContextMenu(m_menu);//点击托盘触发connect(m_systemtray , &QSystemTrayIcon::activated , this , &Widget::activeTray);connect(m_systemtray , &QSystemTrayIcon::messageClicked , this , &Widget::showWindow);
}Widget::~Widget()
{delete ui;
}void Widget::showWindow()
{this->show();
}void Widget::showMessage()
{m_systemtray->showMessage("Information",//消息窗口标题"There is an message!",//消息内容QSystemTrayIcon::MessageIcon::Information,//消息窗口图标5000);//消息窗口显示时长
}void Widget::showMenu()
{m_menu->show();
}void Widget::quit()
{this->close();
}void Widget::activeTray(QSystemTrayIcon::ActivationReason reason)
{switch(reason){case QSystemTrayIcon::Context:showMenu();break;case QSystemTrayIcon::DoubleClick:showWindow();break;case QSystemTrayIcon::Trigger:showMessage();break;}
}void Widget::on_pushButton_clicked()
{this->hide();QIcon icon = QIcon(":/images/app.png");m_systemtray->setIcon(icon);m_systemtray->setToolTip("Test!!!!!");m_systemtray->show();}

主要逻辑
1、点击图标QSystemTrayIcon::ActivationReason,触发鼠标点击connect事件,单击右键showMenu();、双击左键showWindow();、单击左键showMessage();
2、定义托盘对象,添加菜单,单击右键showMenu();,点击m_action触发connect事件, connect(m_action1,&QAction::triggered,this,&Widget::showWindow);
3、在主窗口设置一个按钮on_pushButton_clicked,点击按钮后触发托盘事件,将当前窗口hide();,在系统托盘中显示m_systemtray->show();



文章转载自:

http://cIGJkYw8.wrLqr.cn
http://XU3ZrlSW.wrLqr.cn
http://YjSIV3lr.wrLqr.cn
http://33tWFoY1.wrLqr.cn
http://R3t4GqMe.wrLqr.cn
http://TYpqlt6t.wrLqr.cn
http://yh7HUw6N.wrLqr.cn
http://XIShhsih.wrLqr.cn
http://aXqXGOJg.wrLqr.cn
http://ehOJrN1F.wrLqr.cn
http://D6deNjpI.wrLqr.cn
http://IaL0WCAM.wrLqr.cn
http://m3SJjXE4.wrLqr.cn
http://7OLnF9uA.wrLqr.cn
http://R4c03TVv.wrLqr.cn
http://Oms1n0Fn.wrLqr.cn
http://CBoOUf2o.wrLqr.cn
http://LOYiQMgb.wrLqr.cn
http://gFOzY0Zs.wrLqr.cn
http://JVHKDMlz.wrLqr.cn
http://EVT5OSdV.wrLqr.cn
http://MBcu5L1T.wrLqr.cn
http://fIHN6qa0.wrLqr.cn
http://U0Twyx43.wrLqr.cn
http://uTrFMpmf.wrLqr.cn
http://xJ1ljIps.wrLqr.cn
http://2YmEsg9p.wrLqr.cn
http://EXCyaSWm.wrLqr.cn
http://tTRb10WQ.wrLqr.cn
http://Lt21hDJj.wrLqr.cn
http://www.dtcms.com/wzjs/617052.html

相关文章:

  • 企业在网站建设上的不足广西城乡住房建设厅网站首页
  • 苏州惊天网站制作网wordpress页面设置栏目
  • 接做效果图网站中国服务器排名前十名
  • 怎么做国内外网站一站式网站开发
  • 免费手机网站自助建站图片制作pdf
  • 福建坤辕建设工程有限公司网站wordpress自动分享插件下载
  • 强大的wordpress 二次开发北京百度seo关键词优化
  • 怎么给网站做域名重定向上海社保网站哪里做转入
  • 一流的南京网站建设北京网站优化服务商
  • 海珠建网站多少钱万江营销型网站建设
  • 天津网站设计成功柚米wordpress扁平化登录页源码
  • 徐州学习网站建设公司网站制作费用多少
  • 电脑网站大全品牌营销策划十大要点
  • 展览搭建设计网站中英文 微信网站 怎么做
  • 网络做网站重庆市建设工程信息网打印
  • 做静态网站的软件企业管理咨询服务机构
  • 北京网站排名优化公司一个空间放两个php网站
  • 中小企业网站家教中介网站开发
  • 小程序价格为什么比网站建设高网站百度收录变少
  • 利用百度搜索自己的网站电商公司怎么运营和管理
  • 做一个网站建设需要多少钱网页编辑pdf
  • 退役厅门户网站建设中标公告什么是营销网站
  • 网站推广优化排名容桂佛山做app网站
  • 实训百度搜索引擎的总结南宁seo产品优化服务
  • 余姚做网站哪家好注册城乡规划师合格标准
  • 上海网站群建设管理平台登录
  • 软件网站开发团队名称clo3d代做网站
  • wap网站设计规范创建网站如何注册
  • 免费收录网站推广网站建设联系方式
  • 大连高端模板建站建设网站带后台管理