用Win32API Shell_NotifyIcon进行托盘图标编程-源代码
CODE:<br>// 结构内存用0初使化 - 注意: 一些Windows函数要求这么做,不过我记不得哪些需要,哪些不需要了:)<br><br> NOTIFYICONDATA niData; <br> ZeroMemory(&niData,sizeof(NOTIFYICONDATA));<br><br>// 得到Shell32的版本号,并依此设置结构成员cbSize的大小 - 注意:MSDN文档中关于这部分的说明有点模糊不清(见本文后面),所以我并不确定下面的代码是否完全正确<br><br> ULONGLONG ullVersion =<br> GetDllVersion(_T("Shell32.dll"));<br><br> if(ullVersion >= MAKEDLLVERULL(6,0,0,0))<br> niData.cbSize = sizeof(NOTIFYICONDATA);<br><br> else if(ullVersion >= MAKEDLLVERULL(5,0,0,0))<br> niData.cbSize = NOTIFYICONDATA_V2_SIZE;<br><br> else niData.cbSize = NOTIFYICONDATA_V1_SIZE;<br><br><br>// 结构成员uID可以是任何UINT值,这个ID用来标志你的托盘图标,Shell_NotifyIcon函数后面将会用到这个值<br><br> niData.uID = MY_TRAY_ICON_ID;<br><br><br>// 结构成员uFlags指出哪些结构成员是有效的。此处也可以设置提示窗口的样式,如冒泡提示:NIF_INFO <br><br> niData.uFlags = NIF_ICON|NIF_MESSAGE|NIF_TIP;<br><br>// 装载图标。 - 注意:调用完函数Shell_NotifyIcon后应销毁该图标。<br><br> niData.hIcon =<br> (HICON)LoadImage( hInstance,<br> MAKEINTRESOURCE(IDI_MY_ICON),<br> IMAGE_ICON,<br> GetSystemMetrics(SM_CXSMICON),<br> GetSystemMetrics(SM_CYSMICON),<br> LR_DEFAULTCOLOR);<br><br>// 设置接收托盘事件消息的窗口句柄。<br><br> niData.hWnd = hWnd;<br><br>// 设置发送消息值。- 注意:消息值的大小应该在WM_APP和0xBFFF之间<br><br> niData.uCallbackMessage = MY_TRAY_ICON_MESSAGE;<br>
- 1
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【分析报告】-03-培训需求分析报告.docx
- 【分析报告】-02-培训需求调查分析报告.docx
- 【需求调查】-02-培训需求调查表.docx
- 【分析报告】-04-培训需求分析报告.docx
- 【分析报告】-01-年度培训需求调查分析报告.doc
- 【需求调查】-04-公司高层培训需求访谈提纲.docx.doc
- 【需求调查】-03-员工培训需求调查表.docx
- GPA使用K8S-Spark集群示例模型
- 【计划表】-02-公司年度培训计划表格.docx
- 【计划表】-01-公司年度培训计划表.docx
- 【计划表】-06-公司年度培训计划表.xlsx
- 【计划表】-05-年度员工教育培训计划表.docx
- 【计划表】-03-物业公司年度培训计划.docx
- 【计划表】-04-公司年度培训计划表.docx
- 【计划表】-08-年度培训计划表.xlsx.xls
- 【计划表】-10-公司年度培训计划表模板.xlsx
- 1
- 2
前往页