win32 托盘图标的显示以及闪烁功能
来源:互联网 发布:淘宝网现状 编辑:程序博客网 时间:2024/05/22 17:01
最近项目需要实现类似QQ托盘的功能。在收到消息后要闪烁托盘,并且左击托盘要实现菜单。现模仿QQ实现该方案。
win32中实现托盘图标的显示主要是应用了Shell_NotifyIcon函数。该函数的作用是向状态栏发送一个消息。
函数原型编辑
BOOL Shell_NotifyIcon(
DWORD dwMessage,
PNOTIFYICONDATA lpdata
);
参数编辑
dwMessage为输入参数,传递发送的消息,表明要执行的操作。可选的值如下:
NIM_ADD
向托盘区域添加一个图标。此时第二个参数lpdata指向的NOTIFYICONDATA结构体中的hWnd和uID成员用来标示这个图标,以便以后再次使用Shell_NotifyIcon对此图标操作。
NIM_DELETE
删除托盘区域的一个图标。此时第二个参数lpdata指向的NOTIFYICONDATA结构体中的hWnd和uID成员用来标示需要被删除的这个图标。
NIM_MODIFY
修改托盘区域的一个图标。此时第二个参数lpdata指向的NOTIFYICONDATA结构体中的hWnd和uID成员用来标示需要被修改的这个图标。
NIM_SETFOCUS
Version 5.0. 设置焦点。比如当用户操作托盘图标弹出菜单,而有按下ESC键将菜单消除后,程序应该使用此消息来将焦点设置到托盘图标上。
NIM_SETVERSION
Version 5.0. 设置任务栏按照第二个参数lpdata指向的NOTIFYICONDATA结构体中的uVersion成员指定的版本号来工作。此消息可以允许用户设置是否使用基于Windows2000的version 5.0的风格。uVersion的缺省值为0,默认指明了使用原始Windows 95图标消息风格。具体这两者的区别请参考msdn中的Shell_NotifyIcon函数说明的Remarks。
lpdata为输入参数,是指向NOTIFYICONDATA结构体的指针,结构体内容用来配合第一个参数wMessage进行图标操作。
如果图标操作成功返回TRUE,否则返回FALSE。
如果dwMessage参数设为NIM_SETVERSION,则如果版本设置成功返回TRUE,如果设置的版本不支持返回FALSE。
在网上找了一个别人封装好的托盘类,其实就是将这几个参数发送一下。
该类的使用很简单,现将函数的功能说一下。1. void CreateTrayIcon( HWND _RecvHwnd,UINT _IconIDResource,LPCTSTR _ToolTipText = NULL,UINT _Message = NULL/*(UIEVENT_TRAYICON)*/);
该函数用于在初始化时生成托盘图标。
2.void DeleteTrayIcon();
该函数用于删除托盘图标。(PS:退出程序前记得调用)
3.bool SetTooltipText(LPCTSTR _ToolTipText);
设置鼠标移动到托盘上的提示信息。
4.bool SetTooltipText(UINT _IDResource);
更换托盘的图标样式
5.CDuiString GetTooltipText() const;
获取托盘的提示信息
6. bool StartTwinkling();
图标闪烁
7.void StopTwinkling();
停止图标闪烁
该类的下载地址为:http://download.csdn.net/detail/suixiangzhe/9322403
0 0
- win32 托盘图标的显示以及闪烁功能
- Qt5 实现程序图标以及动态托盘闪烁图标
- VC 程序显示托盘图标功能
- qt类似于qq托盘图标闪烁的消息提示
- qt类似于qq托盘图标闪烁的消息提示
- paip.提升用户体验------c++ Qt5 实现程序图标以及动态托盘闪烁图标
- 显示托盘图标
- 托盘图标显示
- 2009-12-04 | 托盘 图标 闪烁
- c++如何设置托盘图标并闪烁
- 地磅称量系统之(52)制作应用程序的托盘功能(显示在操作系统的时间左边的小图标)
- 托盘程序(菜单 闪烁功能)
- Qt实现任务栏中的托盘图标的功能.
- 单击托盘图标,显示菜单
- ubuntu11.04 托盘 图标 显示
- vc6.0 托盘显示图标
- c#在托盘显示图标
- java程序系统托盘的托盘图标的显示
- php使用uediter获取不到内容
- log4j-1.2.17的详细配置
- 10002---Meta标签中name和http-equiv的区别
- coderforce 484A Bits(强大的位运算)
- 如何正确处理时间
- win32 托盘图标的显示以及闪烁功能
- 中文关键词自动分类-----从此解放双手了
- DatePicker日期格式化
- 如何让一个类不能被继承
- Windows-----Word设置链接到其他位置
- Linux原始套接字----ping命令的实现
- Run loop基础
- 关于iOS远程推送原理步骤
- xshell 使用pem文件登录