翻新时间:2022-09-08
应用程序指示图标的实现方法研究
应用程序指示图标的实现方法研究
蒋俊杰 石波 潘若愚(合肥工业大学网络所 230009)
摘要:本文较详细地介绍了Windows环境下的应用程序指示图标的基本原理及其实现方法,并给出了通过Delphi编程环境实现的应用程序指示图标的实例.
关键词:指示图标 Delphi
1.引言
在早期的DOS操作系统中,存在着一类特殊的程序—内存驻留程序(TSR),这类程序始终驻留在内存中,当需要使用时就直接从内存中调用,大大提高了时间效率,而这类程序一般的也是系统需要频繁调用的程序或是一个实时监控程序,因此通过驻留内存来换取时间效率是值得的.
在Windows环境下也需要这一类程序,一些是系统程序如输入法和系统时钟,一些是应用程序如一些实时监控的杀毒软件等,这些程序通常都是一直伴随着系统运行的,它们在运行时一般不需要或很少需要用户的干预, 而Windows环境下的应用程序在运行时通常都是以窗口形式存在的,即使最小化也会在任务栏上留下一个带图标及标题的按钮,又由于Windows是多任务操作系统,用户几乎肯定会同时进行其他操作,因此象上述应用程序若不采取其他措施就必然会影响到用户的其他操作或者是程序自身容易受到意外的用户干预,影响了正常运行.
可喜的是,从Windows 95 和 Windows NT 4.0开始,出现了一个令人振奋的特性:任务栏指示区.这个通常位于任务条右端的区域能包含一种称作指示图标(NotifyIcon)的小图标(如输入法图标、系统时钟图标等),通过这些图标能够引出复杂的应用程序或菜单,而具有了这种图标的应用程序也就不存在上面所讲的问题了.本文将介绍Windows环境下应用程序指示图标的基本原理及其实现方法,并给出通过Delphi编程环境实现的应用程序指示图标的实例.
2.基本原理
要实现应用程序指示图标,首先需要创建一个应用程序窗口,再注册一个图标到任务栏,并设置它的消息循环(使图标与某个应用程序窗口关联),最后还应在程序退出时关闭该指示图标,这就是整个应用程序指示图标实现过程的基本步骤,当然还有很多具体的细节上的工作.下面就介绍一些比较关键的基本原理及技术细节.
在Windows系统中存在这样一个基本的数据结构: TNotifyIconData,它是一个用来设置窗口句柄的数据结构,是一个记录类型的参数,其具体结构如下:
Type
TNotifyIconData = record
cbSize: DWORD;
hWnd: HWND;
uID: UINT;
uFlags: UINT;
uCallbackMessage: UINT;
hIcon: HICON;
szTip: array [0..63] of AnsiChar;
end;
要实现指示图标首先就需要设置这个图标的窗口句柄(这将定义哪个窗口处理消息循环),回调消息号,图标,工具提示等,这也是所有工作的关键.一旦这个数据结构设置了,我们就可以增加一个图标到任务栏上的指示区了,同时将该图标与一个窗口(应用程序)关联了起来.
下面就简要介绍上述数据结构中的各个成员:
·cbSize是该结构的大小(由系统用来确定版本);
·hWnd是一个窗口句柄,用来指示Icon向该窗口发送消息,即将Icon与该窗口关联了起来;
·uID是图标标识符,仅当程序有多个图标时才有用, 它是用于区分各个图标的;
·uFlags有三个可能的标志: nif_Message、nif_Icon及nif_
下载文档
网友最新关注
- 文具盒
- 妈妈,我想对您说
- 秋冷不商量
- 游戏游戏,我爱你
- 美丽的家乡
- 我的梦
- 摘酸枣
- 小城火车站
- 秋天的田野
- 我的老家
- 难忘的启蒙老师
- 黄瓜的自述
- 动画有趣莫着迷
- 我家的小院子
- 圣诞联欢会
- SCET―3测试对高职英语教学的反驳作用探析
- 多媒体技术在英语教学方面的应用
- 浅议语言教学中学习目标的设定
- 浅谈英语文化认同危机及对策
- “能力本位”视角下的高职数学教学改革
- 浅谈移动互联技术在高职英语教学中的应用
- 由大学英语课文联想到的阅读教学法
- 由一道走红网络的试题引起的批判性思维的思考
- 创新型高校英语教师的学生观
- 认知语言学对英语词汇教学的启示分析
- 高校英语语言教学存在的问题及策略
- 摭谈数学选修课“九连环”教学
- 多模态元话语在大学英语口语课堂教学中的应用
- 多媒体技术在大专英语课堂中的运用
- 作文材料自选厅
- 《我家住在大海边》教学设计之三
- 《ai ei ui》第二课时教学设计之一
- 《课桌下的纸团》教学设计之一
- 《ai ei ui》教学设计之四
- 《我家住在大海边》教学设计之二
- 《我家住在大海边》教学设计之四
- 《ai ei ui》教学设计之三
- 《ao ou iu》第一课时教学设计之一
- 《白米饭和花衣裳》教学设计之二
- 《课桌下的纸团》教学设计之二
- 联系生活体验 学习汉语拼音
- 《我家住在大海边》教学设计之一
- 《白米饭和花衣裳》教学设计之一
- 《ai ei ui》教学设计之二
- 《我家住在大海边》教学设计之五