Qt 创建托盘图标与菜单

Qt实现最小化窗口到托盘图标 Qt实现软件在系统托盘中显示! 阅读详情

/* hello.h*/

#include <QtGui>
class myclass: public QWidget
{
Q_OBJECT
public:
myclass();
private:
QPushButton *b1;
QSystemTrayIcon *trayIcon;
char *msg;
void showMessage(char *msg);
void createActions();
void createTrayIcon();
QAction *minimizeAction;
QAction *maximizeAction;
QAction *restoreAction;
QAction *quitAction;
QMenu *trayIconMenu;
private slots:
void showM();
void iconActivated(QSystemTrayIcon::ActivationReason reason);
};

 

/*hello.cpp*/

#include <QtGui>
#include "hello.h"
myclass::myclass()
{
QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
setMinimumSize(200,100);
b1=new QPushButton("hello world",this);
b1->setGeometry(20,20,160,40);
QIcon icon = QIcon("./images/MSNLogo.ico");
setWindowIcon(icon);
trayIcon = new QSystemTrayIcon(this);
trayIcon->setIcon(icon);
trayIcon->setToolTip("a trayicon example");
createActions();
createTrayIcon();
trayIcon->show();
setWindowTitle(tr("Systray"));
connect(trayIcon,SIGNAL(activated(QSystemTrayIcon::ActivationReason)),this,SLOT(iconActivated(QSystemTrayIcon::ActivationReason)));
connect(b1,SIGNAL(clicked()),this,SLOT(showM()));
}

void myclass::showM()
{
QString titlec=tr("slot需要signal相同的参数进行传递");
QString textc=QString::fromLocal8Bit("测试内容单击、双击、中键、按钮");
trayIcon->showMessage(titlec,textc,QSystemTrayIcon::Information,5000);
   }

void myclass::showMessage(char *msg)
{
QString titlec=tr(msg);
QString textc=QString::fromLocal8Bit("测试内容单击、双击、中键、按钮");
trayIcon->showMessage(titlec,textc,QSystemTrayIcon::Information,5000);
   }

void myclass::iconActivated(QSystemTrayIcon::ActivationReason reason)
{
    switch (reason) {
    case QSystemTrayIcon::Trigger:
showMessage("单击");
break;
    case QSystemTrayIcon::DoubleClick:
showMessage("双击啦");
      break;
    case QSystemTrayIcon::MiddleClick:
showMessage("你用的是三轮鼠标还是滚轮鼠标啊");
      break;
    default:
      ;
    }
}

void myclass::createActions()
{
    minimizeAction = new QAction(tr("最小化 (&I)"), this);
    connect(minimizeAction, SIGNAL(triggered()), this, SLOT(hide()));

    maximizeAction = new QAction(tr("最大化 (&X)"), this);
    connect(maximizeAction, SIGNAL(triggered()), this, SLOT(showMaximized()));

    restoreAction = new QAction(tr("还原 (&R)"), this);
    connect(restoreAction, SIGNAL(triggered()), this, SLOT(showNormal()));

    quitAction = new QAction(tr("退出 (&Q)"), this);
    connect(quitAction, SIGNAL(triggered()), qApp, SLOT(quit()));
}

void myclass::createTrayIcon()
{
    trayIconMenu = new QMenu(this);
    trayIconMenu->addAction(minimizeAction);
    trayIconMenu->addAction(maximizeAction);
    trayIconMenu->addAction(restoreAction);
    trayIconMenu->addSeparator();
    trayIconMenu->addAction(quitAction);
    trayIcon->setContextMenu(trayIconMenu);
}


int main(int argc,char **argv)
{
QApplication testc(argc,argv);
myclass newc;
newc.show();
return testc.exec();
}

 

 

qt 之 QSystemTrayIcon(托盘程序整个例子) 小伙伴们会经常遇到一些托盘程序,有些程序关闭后,程序并没有退出,而是放入了托盘中,如下图: 那qt是如何实现这样的办法呢,其实就是用到了QSystemTrayIcon类,通常有两种方法去写,第一种比较简单,直接利用 QSystemTrayIcon ,来达到一些基本的托盘程序,也是本文章要讲的。第二种是继承QSystemTrayIcon类,这样子类设计可以使得托 盘程序更加功能强大,接下来给大家讲解简单的托盘: 托盘也出现了程序: ... 阅读详情

相关推荐

Qt系统托盘程序的实现

Qt程序创建系统托盘

null_plus的博客 1万+

Qt 添加系统托盘

使用的方法和步骤如下:       1、#include 如果需要系统托盘图标的菜单,则还需要#include ;       2、声明对象QSystemTrayIcon *tray和QMenu *trayMenu;       3、接下来可以对tay进行一些初始化的工作。           tray->setToolTip(...);//设置tooltip

The Pursuit Of Heaven 843

Qt--实现程序系统托盘

一、展示效果 二、具体操作 widget.h #ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include <QCommonStyle> #include <QSystemTrayIcon> #include <QAction> #include <QMenu> QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAM

贝勒里恩的博客 602

Qt程序添加托盘图标

我们先创建一个QApplication对象,然后创建一个QSystemTrayIcon对象,再指定图标的路径。接着创建了一个QMenu对象,并在菜单中添加一个关闭程序的动作,然后将菜单设置给托盘图标,并连接了关闭程序的槽函数。最后调用show()方法显示托盘图标,并通过app.exec()进入事件循环。在Qt中,可以使用QSystemTrayIcon类来实现在程序运行时显示图标在托盘栏,并且通过右键点击图标来关闭程序。// 将菜单设置给托盘图标。// 连接关闭程序的槽函数。// 创建系统托盘图标。

qq_70621180的博客 969

Qt 实现系统托盘,托盘菜单,托盘消息.zip

Qt 实现系统托盘,托盘菜单,托盘消息.zip

Qt个性化系统托盘的实现

Qt个性化系统的实现,模仿了电脑管家的系统托盘,因为图标没有找到,所以图标不是很像。但是基本很相似。

C++Qt windows系统托盘增加图标和功能

windows系统托盘增加图标和功能 C++ Qt

qq_40135848的博客 653

STM32F103C8T6实战指南:从零搭建最小系统与GPIO控制

本文详细介绍了STM32F103C8T6微控制器的实战应用,从零开始讲解如何搭建最小系统并进行GPIO控制。内容涵盖电源电路设计、时钟配置、GPIO工作模式详解及实战项目开发,帮助初学者快速掌握这款ARM Cortex-M3内核微控制器的核心开发技能,适用于物联网设备和嵌入式系统开发。

lemon的博客 631

QT----给程序添加上任务栏托盘图标和退出

让我们的程序拥有任务栏托盘图标,实现程序后台运行,退出等功能。

混吃等死,偶尔搞点好玩的 1398

SIMULIA-Simpack 2022x新功能介绍

增加库伦摩擦类型力元95 Coulomb Friction增加了3种新的摩擦方向类型用于模拟平面、圆柱和球面摩擦。针对平移和旋转摩擦改进了滑动到粘着过渡阶段的检测,增加一个参数定义两种不同的滑移-粘滞过渡模式,即“Unloaded stick stiffness”和“Preload stick with last slip”。新增加124'Applied Load’力元允许用户将力或扭矩作为恒定值或通过激励元素施加到To Marker点上。该力元建模操作方便,效率高。支持线性柔性体装配。

crystalzhan的博客 1046

【探秘】二维异形件重叠移除算法:从度量到消除的实战解析

本文深入解析二维异形件重叠移除算法的核心技术与实战应用,涵盖重叠度量、零件扰动策略及消除方法。通过NFP(临界多边形)技术、空间分区加速等优化手段,有效解决异形件排版中的重叠问题,提升材料利用率和计算效率。适合制造业、CAD软件开发者及算法工程师参考。

weixin_28698059的博客 251

QT 创建托盘图标和右键菜单

<br />void Shutdown::initTrayIcon()    <br />{     <br />        //创建并设置动作     <br />    minAction = new QAction(this);     <br />    minAction->setIcon(QIcon(":/icons/min.bmp"));     <br />    connect(minAction,SIGNAL(triggered()),this,SLOT(hide()));   

auragreen的专栏 3740

新手必看:5分钟搞定Unitree Go1机器狗Gazebo仿真运动控制(附按键图解)

本文为新手提供了Unitree Go1机器狗在Gazebo仿真环境中实现运动控制的快速指南。通过5分钟极简配置和按键图解,帮助开发者快速掌握宇树科技明星产品的基础操作,包括环境搭建、仿真启动和运动控制技巧,适合零基础用户快速上手。

weixin_42550597的博客 300

Qt创建系统托盘菜单

Qt创建系统托盘菜单 //菜单 createMenu(); //判断系统是否支持托盘图标 if(!QSystemTrayIcon::isSystemTrayAvailable()) { return; } //实例QSystemTrayIcon myTrayIcon = new QSystemTrayIcon(this); //设置图标 myTrayIcon-&g...

qq_35297310的博客 410

遥感数据处理必看:哨兵1 SLC与GRD预处理差异全解析

本文详细解析了哨兵1号卫星SLC与GRD数据的预处理差异,从数据基础认知到实战应用全流程对比。重点介绍了SLC数据的轨道校正、辐射校正等关键步骤,以及GRD数据的简化处理流程,帮助用户根据应用场景选择合适数据类型。通过SNAP等工具的实际操作示例,提升遥感数据处理效率。

weixin_29035405的博客 339

浅谈MOS管的发热原因和解决办法

解读一下开关管发热原因,解决方案和开关损耗测试。

qq_45508321的博客 1万+

Qt 创建后台系统托盘菜单

创建步骤 创建 QSystemTrayIcon 对象 创建 QMenu 对象 创建具体的QAction对象,绑定相应的实现槽函数 将QAction对象加入到 QMenu 对象中 QSystemTrayIcon 对象设置相应的托盘图标或者ToolTips 调用 QSystemTrayIcon 的 setContextMenu 设置QMenu 调用 QSystemTrayIcon 的show 显示菜单即可 代码示例 _sysTray = QSharedPointer<QSystemTrayIcon&gt

weixin_39308337的博客 243

DeepSeek网页版和DeepSeek Harness

DeepSeek网页版是开箱即用的对话工具,适合快速问答与日常任务;而DeepSeekHarness(dsh)是基于Node.js的开源智能体框架,支持文件操作、命令执行、多工具协同,实现“对话即执行”。二者定位不同:网页版为“大脑”,Harness为“躯体”。前者封闭易用,后者开放可扩展,具备可追溯的执行日志与插件化架构。未来,网页版将聚焦轻量化普及,Harness则致力于构建生态平台。对开发者而言,应将AI作为执行层,守住决策层,深耕垂直领域,并掌握AI工作流设计能力,以构建不可替代的技术优势。

几十年资深高级架构师,技术专家的技术笔记。专注C、Java、Python、微服务、云原生、AI工程化及高并发系统分布式架构实战,分享源码剖析、性能调优与架构治理经验。 864

QT系统托盘

使用QSystemTrayIcon类创建一个对象设置一个图标调用show就可以在程序运行的时候有一个托盘图标了

weixin_44263232的博客 2815

朱长江《偏微分方程简明教程》答案第一章部分

偏微分方程简明教程第一章习题1.1 第一章 习题1.1 1、指出下列方程的阶,并判断它是线性的还是非线性的。如果是线性的,说明它还是其次的: (1)ut−(uxx+uyy)+1=0;(2)ut−uxx+xu=0;(3)ut−uxxt+uux=0;(4)ux2+uuy=0;(5)utt−uxx+t2+x2=0;(6)ux+eyuy=0;(7)ut+uxxxx+1+u=0;(8)ux(1+ux2)−12+uy(1+uy2)−12=0;(9)∂4u∂x4+2∂4u∂x2∂y2+∂4u∂y4=0;(10)∂3u∂x

ymengm的博客 6760

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Qt任务栏,托盘栏,托盘菜单,图标等操作

隐藏任务栏 setWindowFlags(Qt::FramelessWindowHint|Qt::WindowStaysOnTopHint|Qt::Tool);//不显示任务栏图标 显示系统托盘图标 #include private:     QSystemTrayIcon *system_tray;     system_tray = new QSystem

IBC 3590

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

qt 实现托盘菜单

mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QSystemTrayIcon> namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q...

sun 1079

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

自学QT之托盘菜单

这两天跟托盘较上劲了,如何实现酷狗那种托盘右键菜单呢?看上去高大上,其实并不难。 只要在托盘产生的时候,给它加上右键菜单就行了。 void player::on_closeBtn_clicked()//单击关闭按钮,产生托盘和托盘菜单 { this->hide(); ...

chizhou4731的博客 216

qt生成应用程序图标和托盘

首先,准备一个图标,例如:zx.ico,并新建一个文本文档,在里面添加一行: IDI_ICON1   ICON DISCARDABLE"zx.ico" 重命名为:zx.rc并保存,和你的程序图标zx.ico一起放到QT工程目录下; 然后,在QT工程文件.pro里面最后新添加一行: RC_FILE = zx.rc 最后,在程序中添加代码: app.seWindow

恋文 954

深入理解 Qt 系统托盘图标:创建自定义的系统托盘图标类

在现代桌面应用程序中,系统托盘图标(通常位于任务栏右下角)是一个常见的交互方式。它为用户提供了快捷的操作界面,如显示应用程序、退出程序、查看通知等。在 Qt 中,类允许我们轻松地在系统托盘中添加图标并与用户交互。今天,我们将介绍如何创建一个自定义的系统托盘图标类,使其能够响应用户的点击事件,并显示一个右键菜单。我们创建了一个名为的类,继承自,并实现了一些附加功能,如响应用户的点击事件、弹出右键菜单等。在这篇博客中,我们创建了一个名为的自定义系统托盘图标类,它继承自设置托盘图标。

qq_35803412的博客 1126
上一篇: Qt 声音文件加载
下一篇: 我的第一个汇编程序,led流水灯
MrBugYang
博客等级 码龄18年 21粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值