在vc中将程序图标最小化到托盘中

VC6.0 中如何实现最小化到托盘以及恢复? (一)  原理1、最小化的原理:首先要将窗口隐藏,然后 在右下角绘制图标。2、恢复的原理:将窗口显示,再将托盘中的图片删除。(二)程序实现1、自定义消息WM_SHOWTASK: #define WM_SHOWTASK (WM_USER +1)2、在MFC的::OnSysCommand(UINT nID, LPARAM lParam)函数体中增加一个命令响应            阅读详情

1.在**.h中定义消息名字,添加消息函数定义

#define WM_ICONNOTIFY  WM_USER + 500 //图标响应消息(lParam)

afx_msg LRESULT OnNotifyIcon(WPARAM wParam, LPARAM lParam);

2.在**.cpp添加消息映射

    ON_MESSAGE(WM_ICONNOTIFY,CtestDlgDlg::OnNotifyIcon)

3.编写最小化到托盘的函数

void CtestDlgDlg::OnBnClickedButton1()

{

    // TODO: 在此添加控件通知处理程序代码

    NOTIFYICONDATA nid;

    nid.cbSize = (DWORD)sizeof(NOTIFYICONDATA);

    nid.hWnd = m_hWnd;

    nid.uID = IDD_TESTDLG_DIALOG;

    nid.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;

    nid.uCallbackMessage = WM_ICONNOTIFY;     //自定义的消息名称

    nid.hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_MAINFRAME));

                                                                            //    IDR_MAINFRAME  是在托盘显示的图标

    strcpy(nid.szTip,"程序名称");      //信息提示条为“计划任务提醒”

    Shell_NotifyIcon(NIM_ADD, &nid);   //在托盘区添加图标

    ShowWindow(SW_HIDE);           //隐藏主窗口

}

4.编写托盘的消息响应函数

LRESULT CtestDlgDlg::OnNotifyIcon(WPARAM wParam, LPARAM lParam)

{

    POINT point;  

    CMenu menu;  

    GetCursorPos(&point);

 

    //如果在托盘图标上双击左键

    if ((wParam == IDD_TESTDLG_DIALOG) && (lParam == WM_LBUTTONDBLCLK))  

    {  

        ShowWindow(SW_SHOW); //显示窗体 

    }

     //如果在托盘图标上单击右键

    if ((wParam == IDD_TESTDLG_DIALOG) && (lParam == WM_RBUTTONDOWN))  

    {        

        menu.LoadMenu(IDR_MENU1);             //加载系统主菜单

        SetForegroundWindow();                //将程序置于桌面顶部 

 menu.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON,point.x, point.y, this); //在点击图标处弹出系统菜单的第一项                  /

    }  

    return 0;

}

5.编写删除托盘图标的函数

void CtestDlgDlg::OnDestroy()

{

    CDialog::OnDestroy();

    // TODO: 在此处添加消息处理程序代码

    NOTIFYICONDATA nc;

    nc.cbSize = sizeof(NOTIFYICONDATA);

    nc.hWnd = m_hWnd;

    nc.uID = IDD_TESTDLG_DIALOG;

    Shell_NotifyIcon(NIM_DELETE, &nc); //删除系统托盘图标 

}

VC实现最小化到系统托盘的简单托盘程序 Windows消息机制是由操作系统管理的一套通信协议,它负责将事件发送到应用程序窗口,并由窗口过程函数处理这些事件。每个消息都代表一个特定的事件,比如鼠标点击、键盘输入、窗口尺寸变化等。 阅读详情

相关推荐

MFC 托盘程序+启动隐藏+开机自启动

MFC开机自启动设置,显示为托盘程序,双击托盘,显示窗口,单击右键,显示子菜单,采用VS2013 VC++编程

VC++中实现程序启动后隐藏窗口,最小化到托盘图标。

对话框型程序的窗口隐藏:1.在OnInitDialog()中加上ShowWindow(SW_HIDE),无效。2.在OnPaint()中加上ShowWindow(SW_HIDE),有效,但会闪烁。3.重载虚函数WindowProc():LRESULT CTes

闷骚的悟空 1万+

VC做的简单的小托盘程序 最小化到右下角

制作一个小的托盘程序,类似于千千静听之类的小软件 最小化到一个托盘。

VC中使程序最小化到系统托盘区

//定义托盘图标结构体 NOTIFYICONDATA nid; #define WM_ICONNOTIFY WM_USER + 909 //图标响应消息(lParam) #define ID_TASKBARICON 100 //参数(wParam) //初始化系统托盘图标 void OnBtnMinimize() { //初始化系统托盘图标 nid.cbSize = sizeof(NOTIFYIC

xumaojun的专栏 862

2023最新扫码连wifi-扫码挪车-聚合CPS返利多合一小程序源码

2023最新扫码连wifi-扫码挪车-聚合CPS返利多合一系统 系统特点: 目前已接入的 CPS 渠道: 充值:话费充值、电费充值、影视会员充值、会员卡券充值 本地团购:联联周边游 电商平台:京东、拼多多、唯品会、淘宝、抖音美团:外卖、闪购、酒店、到店、优选饿了么:外卖、商超 出行服务:滴滴打车、滴滴加油、滴滴货运、花小猪打车、高德打车、同程打车 连锁餐饮点餐:肯德基、麦当劳、百果园、奈雪的茶、瑞幸咖啡、星巴克、喜茶、汉堡王、必胜客电影票:特价电影票 注意:以上涉及到需要支付的 CPS 渠道,不需要预存!

qq_41837379的博客 3110

WSL2网络配置全攻略:如何让Windows和Linux子系统互相访问端口(附防火墙设置)

本文深入解析WSL2的网络架构,并提供详细的端口互通配置指南。针对WSL2与Windows宿主机之间常见的网络访问问题,文章从原理出发,逐步讲解如何识别网络环境、配置Windows防火墙规则、调整服务监听地址,并介绍镜像网络模式等进阶优化方案,最终实现稳定可靠的双向端口访问。

sony5的博客 1148

[转贴]托盘编程全接触

No.1 [转贴]托盘编程全接触 托盘编程全接触 作者:acute 托盘编程 一、托盘简介 所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区。其实,托盘区的编程很简单,下面简要阐述一下子喽 二、托盘编程相关函数 其实呢,把程序放到托盘上的本质就是先在托盘区绘制一个图标,然后把

糯米糊糊的专栏 1782

交通流预测爬坑记(一):交通流数据集,原始数据

常用的交通流数据集,持续更新~~

K_first的博客 4万+

VC中如何实现最小化到托盘以及恢复

VC6.0 中如何实现最小化到托盘以及恢复?function StorePage(){d=document;t=d.selection?(d.selection.type!=None?d.selection.createRange().text:):(d.getSelection?d.getSelection():);void(keyit=window.op

恋一种味 1267

Excel VBA+Adobe Acrobat Pro PDF发票识别全流程(附避坑指南)

本文详细介绍了如何利用Excel VBA与Adobe Acrobat Pro的API接口,构建一套企业级PDF发票智能识别与处理系统。内容涵盖从环境配置、核心文本提取原理、数据解析清洗到工程化脚本设计的全流程,并针对密码区干扰、不征税发票等常见问题提供避坑指南,旨在帮助财务人员和开发者实现高效、精准的财务数据处理自动化。

weixin_29207439的博客 346

避坑指南:时间序列互相关分析(CCF)常见的5个误用场景

本文详细解析了时间序列互相关分析(CCF)中常见的5个误用场景,包括忽视平稳性检验、混淆同期相关与因果关联、误读滞后阶数、忽略自相关干扰以及样本量不足等问题。通过实际案例和技术建议,帮助数据分析师避免这些陷阱,确保CCF分析的准确性和可靠性。

weixin_29064009的博客 428

VC实现程序最小化到系统托盘功能

原文地址:《VC托盘编程》         以VC编程中,经常涉及到托盘操作,比如为我们的程序添加托盘图标,添加托盘左键响应或右键菜单,我们常用的QQ就是个托盘程序。   好了下面我们来看下VC中托盘编程要注意些什么。首先我们要弄清楚一个结构体-NOTIFYICONDATA,

2653

Kriging代理模型理论相关推导

代理模型,Kriging,加点准则

森屹的博客 1万+

vc中程序最小化到托盘(任务拦)的实现

 vc中有时候要实现程序最小化,实际上那是的隐藏.那么如何实现那,下面我将给出我自己的粗浅建议.程序最小化到托盘,是把程序隐藏,并在托盘上加上响应的图标,对图标操作发送消息来实现的.下面给出做法供大家参考:首先在.h文件里加入自定义消息:#define WM_SHOWTASK   (WM_USER + 0x100)    //一般数值大于100//{{AFX_MSG(CMPAR

HICON的专栏 2429

STM32 IIC温湿度传感器(STH45)实验

精度 ΔRH = ±1.0 %RH, ΔT = ±0.1 °C• 平均电流:0.4 μA,空闲电流:80 nA• I2C FM、CRC 校验和、乘法。I2C 地址。• 专利保护选项 [1]、PTFE 膜和可拆卸保护盖• 工作范围:0 …100 %相对湿度,−40…125 摄氏度• 在冷凝环境中功能齐全• 动力加热器,真正的NIST可追溯性• JEDEC JESD47 认证 • 符合 ISO 17025 : 2017 的传感器专用校准证书,3 点温度校准。

baidu_34971492的博客 3072

基于Simulink的轨道交通信号控制系统仿真详细介绍

轨道交通信号控制系统是确保列车安全、高效运行的核心技术。通过Simulink进行信号控制系统的仿真,可以验证系统的设计、优化调度策略并提高安全性。以下是如何在MATLAB和Simulink中设计并仿真一个轨道交通信号控制系统的详细步骤。通过上述步骤,我们成功设计并实现了基于Simulink的轨道交通信号控制系统仿真。该系统能够根据列车位置、速度和轨道状态生成控制指令,确保列车的安全、高效运行。通过虚拟场景仿真、硬件在环测试和实机测试,验证了系统的性能,并通过参数优化进一步提升了系统的可靠性。引入智能调度。

xiaoheshang_123的博客 462

MFC窗口最小化到托盘

把程序放到托盘上的本质就是先在托盘区绘制一个图标,然后把程序隐藏不见,再对托盘的图标进行消息处理,就可以了。绘制图标以及确定图标所传送消息的函数只有一个,那就是  WINSHELLAPI BOOL WINAPI Shell_NotifyIcon( DWORD dwMessage, PNOTIFYICONDATA pnid );  这个函数负责向系统传递消息,以添加、修改或删除托盘区的图标。它的返回

雷霄骅(leixiaohua1020)的专栏 4118

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

VC最小化到托盘程序

<br /> 在实际操作电脑的过程中,我们常常可以看到一些应用程序可以最小化到桌面右下角的托盘中显示,如一些杀毒软件等开机就显示在托盘中,或是我们常用的QQ等聊天工具,都可以最小化在托盘中,如图-1。<br /><br />    在图-1中,可以看到第一个服务器样式的图标,那个就是我编写的服务器程序最小化在托盘中的显示。其实很简单,只要在程序中加几行代码就可以了。我主要就MFC中基于Dialog对话框的程序作一下简单的介绍。以下是基本步骤:<br /><br />1、首先建立一个基于对话框的MFC程序;<

mfc_winform_2011的专栏 581

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

VC++最小化到托盘

一、托盘简介   所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区。其实,托盘区的编程很简单,下面简要阐述一下子喽^_^   二、托盘编程相关函数   其实呢,把程序放到托盘上的本质就是先在托盘区绘制一个图标,然后把程序隐藏不见,再对托盘的图标进行消息处理,就可以了。 ...

weixin_34414196的博客 1183

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

程序最小化到托盘

转自:http://zf0026.blog.163.com/blog/static/178262113201121711302641/ 对原文的补充,最为新手,需要知道如何定义消息,响应WM_SIZE消息 VC最小化到托盘程序   2011-03-17 11:30:26|  分类: c++|字号 订阅 在实际操作电脑的过程中,我们常常可以看到一些应用程序

u011365452的专栏 2833

VC托盘程序的简单实现

http://misire.blog.sohu.com/155623530.html   VC托盘程序的简单实现   以下是网上看到的一个实现VC托盘的程序,好像只适用于对话框程序。经本人简单整理。 一、托盘简介     所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起,但又不希望占据任务栏的时候,就可以把程序

孙建军的博客 1081

VC++设计托盘图标程序

在Windows操作系统中,任务栏的右边(托盘)会常驻几个图标,如输入法切换图标、音量控制图标等,此外我们还经常遇到具有托盘图标的软件,如金山词霸、实时监测功能的杀毒软件等。这些软件在后台运行,通常不占用太多的屏幕资源,只在通知栏上放一个小小的标志,必要时我们可以通过用鼠标点击图标对其进行选单操作或激活其主窗口。有时我们自己编写的程序也希望有类似的效果,本文将详细地介绍用VC设计托盘图标程序的方法

Ryan 的 Blog 1255

VC 将程序最小化到托盘

这篇文章内容比较基础,最近看到觉得有用,顺便翻译一下 有空可以写一个自己的TrayIcon类,化简这些原始的操作。 Introduction 这篇文章解析了 Shell_NotifyIcon 这个函数用法--用来建立你自己的应用程序的系统托盘图标. 这篇文章给了基本的缩小到托盘的操作过程并让你从中了解. 这篇文章提供8个简单的步骤让你成功的实现在你的程序中建立系统托盘图标. 源

justlovetao的专栏 1094

VC++:如何将程序最小化到托盘

<br />一、托盘简介 <br /><br />所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区。其实,托盘区的编程很简单,下面简要阐述一下子喽^_^ <br /><br />二、托盘编程相关函数 <br /><br />其实呢,把程序放到托盘上的本质就是先在托盘区绘制一个图标,然后把程序隐藏不见,再对托盘的图标进行消息处理,就可以了。 <br /><br />绘制图标以及确定图标所

Lewen的编程博客 819
上一篇: c++primer学习笔记
下一篇: 在Windows下编译OpenSSL(VS2005) 转
skilledprogrammer
博客等级 码龄19年 78粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值