没有合适的资源?快使用搜索试试~ 我知道了~
VC++任务栏提示区图标的实现详解
3星 · 超过75%的资源 需积分: 9 88 下载量 159 浏览量
2008-11-15
15:04:03
上传
评论 1
收藏 38KB DOC 举报
温馨提示
试读
6页
目前,许多应用软件都实现了WINDOW任务栏提示区图标,如金山词霸、超级解霸等,这不仅增强了软件的特色,更方便了用户的使用。本文将介绍一个封装好的类,用VC++来实现这项功能,希望对读者有所帮助。
资源推荐
资源详情
资源评论
VC++任务栏提示区图标的实现
目前,许多应用软件都实现了 WINDOW 任务栏提示区图标,如金山词霸、超级解霸等,这不仅增强了软
件的特色,更方便了用户的使用。本文将介绍一个封装好的类,用 VC++来实现这项功能,希望对读者有
所帮助。
一、一个简单的直接引用的方法:
我们可以使用直接引用 WIN32 API 函数的方法实现任务栏提示区图标。
1、定义一个 NOTIFYICONDATA 数据结构,初始化各数据项。其结构详见在线帮助。
2、使用 WIN32 API 函数 Shell_NotifyIcon 实现任务栏提示区图标。函数原形如下:
WINSHELLAPI BOOL WINAPI Shell_NotifyIcon(DWORD dwMessage,//消息类型
PNOTIFYICONDATA pnid //指向 NOTIFYICONDATA 结构的指针
);
消息类型包括:NIM_ADD 增加图标到任务栏;
NIM_DELETE 从任务栏删除图标;
NIM_MODIFY 修改任务栏图标;
二、一个更好的面对对象的方法:
为了使使用更加方便、合理,更符合面对对象的处理方法,我们应当封装一个类
(CSystemIcon),由此类实现任务栏提示区图标。
1、由 CObject 类派生出 CsystemIcon 类。
2、构造下列函数:
LRESULT OnIconNotification(WPARAM wID,LPARAM lEvent) //自定义消息处理函数
void DeleteIcon() //删除图标
void HideIcon() //隐藏图标
void ShowIcon() //显示图标
BOOL SetTooltipText(LPCTSTR pszTip) //设置提示文本
BOOL SetTooltipText(UINT nID)
CString GetTooltipText() const //得到提示文本
BOOL SetNotificationWnd(CWnd* pWnd) //设置通知窗口
CWnd* GetNotificationWnd() const //得到通知窗口
HICON GetIcon() const //得到图标
BOOL SetIcon(HICON hIcon) //设置图标
BOOL SetIcon(LPCTSTR lpszIconName)
BOOL SetIcon(UINT nIDResource)
BOOL SetStandardIcon(LPCTSTR lpIconName) //设置系统标准图标
BOOL SetStandardIcon(UINT nIDResource)
3、生成的 CsystemIcon 类详见下列源文件:
a、CsystemIcon 类.H 头文件:
/////////////////////////////////////////////////////////////////////////////
// SystemIcon.h : header file
//
#ifndef _INCLUDED_SYSTEMICON_H_
#define _INCLUDED_SYSTEMICON_H_
/////////////////////////////////////////////////////////////////////////////
// CSystemIcon window
class CSystemIcon : public CObject
资源评论
- xiongzw20082014-07-24还不错,可以用
- 特性变幻2014-01-14比较复杂,需要调试
- jinyuxiaoqiang2013-03-06有点深奥,留着以后学习
caiwuke
- 粉丝: 35
- 资源: 33
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功