
23333 有一阵子没写博客了,研究了挺长时间qt,学到任务栏托盘时实在无语,网上找得到的代码大多是废码,Qt5不支持以及原本就有弊病不能实现仍被n转来转去的qt 最小化到托盘,甚是无语。
简单托盘功能下面在Qt5.5编译通过:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QSystemTrayIcon>//任务栏类
#include <QMenu>//菜单类
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
);
~MainWindow();
private:
QSystemTrayIcon *myTrayIcon;
QMenu *myMenu;
QAction *restoreWinAction;
QAction *quitAction;
void createMenu();
Ui::MainWindow *ui;
private slots:
void showNormal();
};
#endif // MAINWINDOW_H
MainWindow.h
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
Main.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//菜单
createMenu();
//判断系统是否支持托盘图标
if(!QSystemTrayIcon::isSystemTrayAvailable())
{
return;
}
//实例QSystemTrayIcon
myTrayIcon = new QSystemTrayIcon(this);
//设置图标
myTrayIcon->setIcon(QIcon(":/new/prefix1/abc"));
//鼠标放托盘图标上提示信息
myTrayIcon->setToolTip("Qt托盘图标功能");
//设置消息
myTrayIcon->showMessage();
//托盘菜单
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())
{
this->hide();
}
}
MainWindow::~MainWindow()
{
delete ui;
}
MainWindow.cpp
PS:
RC_FILE = 1.rc

PS:
1.rc
IDI_ICON1ICON"6.ico"
所需图片要写在rc配置文件以及添加至项目资源中,.cto文件自备2333。
C# 实现最小化托盘功能
winform程序实现最小化托盘显示 1.创建新的解决方案,解决方案名称跟模式自定义 2.在解决方案下面新建一个窗体,从上面工具箱,将NotifyIcon拖过去窗体,该控件的作用是:运行程序之后在Wi ...
C#之使用NotifyIcon实现任务栏托盘菜单qt 最小化到托盘,图标闪烁效果及气泡提示
很多程序是只应该后台运行的,甚至不需要自己的应用图标.NotifyIcon提供了程序在任务栏的显示功能 程序下载链接如下: ...
Delphi 最小化程序到任务栏托盘 增加右键PopMenu
在做中间层时,中间层往往不需要点击关闭时立即关掉,而是最小化到托盘.故而特意隐藏关闭按钮功能. 1)隐藏退出功能 用PopMenu退出菜单替代 1.增加popMenu退出菜单,绑定至窗体 2.增加函数 ...

NotifyIcon制作任务栏托盘菜单
常用工具飞信.QQ在任务栏中的界面ICO,以及键盘移动到字体是单击菜单选项 1.首先制作任务栏图标 this.ShowInTaskbar = true; 2.窗体最小化时甚至关掉时隐藏到任务栏,有时候 ...
bootstrap-sidebar,后台边栏折叠功能
iOS开发工程实战——Swift实现ScrollView滚动栏功能
手机成为一个小屏设备,须要显示的信息通常能够在一个屏幕上显示,此时就需要使用至滚动栏,当然不仅像TableView这样才能自带滚动功能的. 假设一个界面上View较多,那就需要应使用到ScrollVi ...
【Qt开发】实现平台托盘,托盘菜单,托盘消息
概述 系统托盘就是在平台桌面底部特定的区域显示运行的程序.windows在任务栏状态区域,linux在布告栏区域.应用程序系统托盘功能,是非常普遍的功能,本篇将具体的介绍如何推动该用途. 演示Demo ...
Delphi 7下最小化到系统托盘
在Delphi 7下要制作平台托盘,只能制作一个比较简洁的系统托盘,因为ShellAPI文件定义的TNotifyIconData结构体是非常早的版本.定义如下: 123456789 _NOTIFY ...
Delphi 7下最小化到平台托盘(主要是WM_TRAYMSG和WM_SYSCOMMAND消息)

在Delphi 7下要制作平台托盘,只能制作一个比较简洁的系统托盘,因为ShellAPI文件定义的TNotifyIconData结构体是非常早的版本.定义如下: 123456789 _NOTIFY ...
spring官网下载
1.第一步:打开官网: 2.第二步:点击“SPRING FRAMEWORK”图片 3.第三步:点击“小猫”图标 4.第四步:拉至页面中部的位置,找到 ...
reqwest请求api和约束(转载)
转自: reqwest 用于浏览器异步HTTP请求.支持xmlHttpRequest, JSONP, CORS, 和 CommonJS ...
Objective-C学习笔记-第四天(1)
解决下面昨天见到的难题 1.@class与import是怎么样的呢?参考: 在头文件中, 一般只应该清楚被引 ...
ASP.NET中Url编码解码
今天遇到Url编码解码的难题,纠结了三天的时间,结果上网一查才发觉太二了我们. 同事写的代码把url用HttpUtility.UrlEncode编码跟解码了,本地测试没有问题,部署到服务器上就提示转码 ...
NSRange

int main(int argc, const char * argv[]) { @autoreleasepool { // insert code here... ...
cmd登录平台用户
1.sqlplus/nolog 2.connsystem/密码assysdba或conn/assysdba或connsys/密码assysdba 注:system系 ...
mpvue——仿QQ【一】
前言 原生仿QQ 这个是后来学习小程序时,模仿的一个demo,只不过是纯页面没啥 ...
Just nothing
I know that's I should do what I can to find a job But I can't focus on it I am always sad and I can ...
Spring AOP学习笔记
Spring提供了一站式解决方案: 1) Spring Core spring的核心功能: IOC容器, 解决对象构建及依赖关系 2) Spring Web ...
from __future__ import
读代码的过程中发现的,好奇搜索了一下,其实当在我们调试别人Python代码的过程中常常会遭遇一些弊端,比如版本不同,代码也会有所改变,比如print函数 Python 2.7版本为 print “ ” ...
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-143557-1.html
而我国媒体大肆报道访问如何如何成功
美舰这次很听话