notifyicondata
首先介绍一下基本知识:
notifyicondata结构体,语法如下:
typedef struct _NOTIFYICONDATA {
Dword cbSize;
HWND hWnd;
UINT uID;
UINT uFlags;
UINT uCallbackmessage;
HICON hIcon;
TCHAR szTip[64];
dword dwState;
DWORD dwStateMask;
TCHAR szInfo[256];
union {
UINT uTimeout;
UINT uVersion;
};
TCHAR szInfotitle[64];
DWORD dwInfoFlags;
GUID guidItem;
} NOTIFYICONDATA, *PNOTIFYICONDATA;
cbSize
按字节计算的结构体。
hWnd
接收通知区域消息的窗口句柄。
uID
应用程序定义的任务栏图标的ID。Shell使用窗口句柄+uID或者GUID的方式来标识Shell_使用到的图标。你可以使用不同的uID来把多个图标关联到一个窗口句柄上。如果指定了GUID,那么uID就会被忽略。
uFlags
一个标志,用来表示结构体中剩下的字段哪些是可用的,或者提供提示条应当如何显示的 附加信息。可以是下面一些值的组合:
uCallbackMessage
应用程序定义的消息ID。系统使用这个ID向由hWnd指定的窗口发送通知消息。当鼠标事件在图标区域发生、鼠标在图标的相关区域晃悠时,发送这个消息;当用鼠标或者键盘选中了图标、或者这些行为发生在气泡通知区域时,发送消息。
uVersion
当uVersion为0或者NOTIfYICON_VERSION时,消息的wParam参数包含了发生事件的图标的ID。这个ID可以是32字节长。lParam参数包含了与该事件相关的鼠标或者键盘消息。例如,当鼠标指针经过任务栏图标时,发送WM_MOUSEMOVE消息。
当uVersion为NOTIFYICON的时候,应用程序通过uCallbackMessage成员继续接收应用程序自定义消息的通知事件,但是lParam和wParam参数意义发生了改变:
hIcon
将要添加/修改/删除的图标句柄。
使用LoadIconMetric函数来确定装载了正确的图标并且被适当的缩放。
szTip
一个标准提示字符串,以NULL结尾。包括结尾NULL字符,最多可以64个。
对于2000及其以后的版本,szTip可以容纳包括NULL结尾在内的128个字符。
dwState
2000及其以后的系统支持此项。图标的状态。可以是下面的一个或者几个值。
dwStateMask
2000及其以后的系统支持。指定了dwState的哪些位是可以被检索或者修改的。取值和dwState相同。例如,dwStateMask设置了NIS_hidden,则当图标的共享字节被忽略时,无论dwState是什么值,只有MIS_HIDDEN状态可以修改。(这块英文没看懂。)
szInfo
2000及其以后的系统支持。气泡通知中显示的文本,该文本以NULL结尾。最多可以有包括NULL在内的256个字符,但是因为要调整区域所以应该限制在200个以内。如果要从UI删除气泡通知,可以(用NIM_DELETE)删除图标,或者在uFlags中设置NIF_INFO并且设置szInfo为空字符串。
uTimeout
在Vista中不赞成使用这个成员。通知显示的时间现在基于系统的辅助功能设置。
hBalloonIcon
Vista及其之后的系统支持。程序提供的自定义通知图标的句柄,必须独立于通知区域图标。如果这个字段不为NULL,并且dwInfoFlags设置为NIF_USER,那么这个图标会被用作通知图标。如果这个成员为NULL,合法的动作就是继续执行。
同样,你只要知道上诉结构体的存在即可,我们可以查询msdn来了解每个成员如何赋值呢。这是windows程序托盘图标的基本知识
相关阅读
学号229 原创作品转载请注明出处 + https://github.com/mengning/linuxkernel/ Linux操作系统分析详细实验--时间片轮转多道程
昨晚,微信IOS版更新了最新的7.0版本,不知道大家体验完是什么感受呢?昨日晚些时候,微信IOS版更新到了全新的7.0版本。从版本号就可以看
next()nextLine()以及nextInt()的区别及用法
next()、nextLine()、nextInt()作为scanner内置的方法,常常让人傻傻分不清楚,今天在这里记下他们的区别以及以此区别为出发点的用法
期待已久的Axure 8.0已经发布,今天小编妹妹收集了MAC/windows版下载地址给大家,产品汪/设计湿/交互喵….赶紧围观过来。Axure
上一篇博客中我们回顾了LU分解,分析了一个简单的电路并观察到 电导矩阵中的对角线项为节点相连的电导之和,非对角线项等于两个节点