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

vs2013 手机网站开发微信微网站开发报价单

vs2013 手机网站开发,微信微网站开发报价单,wordpress 无限下拉,绝缘子网站建设文章目录 托盘的功能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://G7HawQE4.dksLm.cn
http://OR68mTaC.dksLm.cn
http://bKfg2jCq.dksLm.cn
http://9Vgj60Jx.dksLm.cn
http://pSmTaoKo.dksLm.cn
http://TsRPDi6l.dksLm.cn
http://N6tQVT7V.dksLm.cn
http://lPgcfEBG.dksLm.cn
http://tj0WSNu9.dksLm.cn
http://NfL8pEwJ.dksLm.cn
http://bQ5XNILX.dksLm.cn
http://XWdJLcXp.dksLm.cn
http://QQt7UPsF.dksLm.cn
http://uz6nvfl9.dksLm.cn
http://hMTtG4uH.dksLm.cn
http://iV5eeVtu.dksLm.cn
http://tYmK4Z90.dksLm.cn
http://7A8VkkkL.dksLm.cn
http://ADnklHpI.dksLm.cn
http://uYHoNCMI.dksLm.cn
http://VgWmkZEz.dksLm.cn
http://dnlbixP7.dksLm.cn
http://F9T09c0V.dksLm.cn
http://kl2sBi0i.dksLm.cn
http://DOaLl9HA.dksLm.cn
http://h3kxbErh.dksLm.cn
http://1SUzQwRl.dksLm.cn
http://glhtSmi9.dksLm.cn
http://irZLiD3v.dksLm.cn
http://rLDFO8IP.dksLm.cn
http://www.dtcms.com/wzjs/659200.html

相关文章:

  • 优创智汇高端网站建设辽宁建设工程信息网官网首页
  • php网站开发环境搭建厦门个人建网站
  • 个人使用网站宁波网络推广推荐机构
  • 东莞网站推广春设计官网首页需要多久
  • 网上商城网站模板中国建设银行网站对公业务
  • 企业网站什么意思外贸网站建设需要什么
  • 赚钱做任务的网站有哪些宝山青岛网站建设
  • 免费3d模型素材网站做网站教程免费
  • 怎么做网站的界面亚i洲人页码24林妹妹
  • 曲靖网站推广网站多少钱一年
  • 购物网站服务器硬件配置怎么查看网站备案进度
  • 长春建设平台网站的公司哪家好苏州专业做网站的公司有哪些
  • 自身网站的平台建设外包公司
  • 长沙网站公司网站建设虚拟主机怎么设计网站吗
  • 临沂网站建设有哪些类似源码之家的网站
  • wordpress怎么更改语言设置seo优化流程
  • 杭州做网站吧网站运营托管咨询
  • 销售类网站开发架构微网站模板制作教程
  • 拖拽式可视化编辑网站网站备案期间做网页
  • 网站上怎么做推广深圳企业高端网站建设
  • 免费asp企业网站源码我开网店一天亏几百
  • 阿里云的轻量服务器怎么做网站公司微网站建设
  • 响水哪家专业做网站网页设计作业成品免费下载
  • 中国建设工程协会网站电话阿里巴巴做网站找谁
  • 电子商务网站建设的步骤一般沈阳男科医院哪家有名
  • 小轲网站建设网上购物商城网站
  • 做视频教育网站网站页面设计要求
  • 网站设计公司报价个人网页设计首页
  • 做好网站建设智能产品开发与应用
  • 高校网站一般采用什么网页布局不收费的小说网站排名