惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Hugging Face - Blog
Hugging Face - Blog
Vercel News
Vercel News
C
Check Point Blog
G
Google Developers Blog
博客园 - 司徒正美
量子位
Engineering at Meta
Engineering at Meta
S
SegmentFault 最新的问题
Google DeepMind News
Google DeepMind News
F
Fortinet All Blogs
A
About on SuperTechFans
美团技术团队
D
DataBreaches.Net
Stack Overflow Blog
Stack Overflow Blog
Jina AI
Jina AI
Y
Y Combinator Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Apple Machine Learning Research
Apple Machine Learning Research
J
Java Code Geeks
MongoDB | Blog
MongoDB | Blog
人人都是产品经理
人人都是产品经理
H
Hackread – Cybersecurity News, Data Breaches, AI and More
The Cloudflare Blog
U
Unit 42

博客园 - 范圣帅

mono+jexus 之连接数据库 mono+jexus 验证码不显示:System.Drawing CentOS安装epel system 函数 tcp/ip协议listen函数中backlog参数的含义与php-fpm的502 Bad Gateway tengine-2.1.0 + lua + base64 tengine-2.1.0 + GraphicsMagick-1.3.20 nginx 反向代理 ArchLinux 下架设PPTPD VPN服务 - 范圣帅 archlinux 下 nignx + php 出现 no input file specified MAMP PRO 下安装 memcache MAC 版本 phpstorm 配置 theme [转]MinGW编译wxWidgets问题 Eclipse 破解ZendStudio 10.1 shell 快速移动,快捷操作 GDI 画出半透明 MFC 常用关闭窗口 Unicode下RegQueryValueEx读取注册表值问题
MFC 中全局变量的使用
范圣帅 · 2013-05-15 · via 博客园 - 范圣帅

一个MFC的程序,有个托盘图标,让每个界面退出的时候都能把他删除掉。于是想把这个做一个全局变量,任何界面退出的时候都 

Shell_NotifyIcon(NIM_DELETE,&tnd);

想到 stdafx.h 是整个MFC都包含的,于是把这个声明放入到 stdafx.cpp 中,然后 stdafx.h 中 extern 一下达到全局变量的作用,因为每个 cpp 都包含了 stdafx.h ,这个全局变量已经引用好了,不用每个页面都去 extern 了。

// stdafx.h

extern NOTIFYICONDATA tnd;

// stdafx.cpp

NOTIFYICONDATA tnd;

 其他页面直接使用:

    lstrcpy(tnd.szTip, _T("酷菠萝客户端正在运行中"));
    tnd.cbSize = sizeof(NOTIFYICONDATA);        //NOTIFYICONDATA结构体大小
    tnd.uID = IDR_MAINFRAME;                        //最小化后显示在托盘的图标的ID
    tnd.uFlags = NIF_MESSAGE|NIF_ICON|NIF_TIP;//指示结构体中有效的成员,依次为表示uCallbackMessage 有效、表示hIcon 有效、表示szTip 有效
    tnd.uCallbackMessage = WM_MY_TRAY_NOTIFICATION;//程序员自定义的消息,当鼠标移动、单击、双击或是其他鼠标事件发生在托盘程序上时,所发送的消息
    tnd.hIcon = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDR_MAINFRAME));//所加入图标的句柄

    Shell_NotifyIcon(NIM_ADD,&tnd);