让程式在前端显示和最小化时在系统栏里

2008-02-23 05:38:48来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

程式缩成图标!
/*参数说明:hWnd,不用多说了吧?
uId,图标排在系统栏中的位置,设为0即可
hIcon,图标
s,鼠标移到图标上要显示的话
*/
/*注意:您必须自定义一个窗口消息MYWM_ICON,
#define MYWM_ICON (WM_APP 100)
在窗口循环中响应该消息:
case MYWM_ICON:
switch(lParam)
{
case WM_LBUTTONDOWN:
case WM_RBUTTONDOWN:
}
以响应鼠标在该程式图标上的击键动作。
假如您想让程式只以图标方式放在系统栏,能够定义窗口属性为WS_EX_TOOLWINDOW或POPUP之类
*/
void PutToTaskBar(HWND hWnd,UINT uId,HICON hIcon,LPCTSTR s)
{
TrayMessage(hWnd, NIM_ADD, uId,NULL, s);
TrayMessage(hWnd, NIM_MODIFY, uId,hIcon, s);
}

BOOL TrayMessage(HWND hDlg, DWORD dwMessage, UINT uID, HICON hIcon, LPCTSTR lpszTip)
{
BOOL res;
//char szVTip[64];
NOTIFYICONDATA tnd;
tnd.cbSize = sizeof(NOTIFYICONDATA);
tnd.hWnd = hDlg;
tnd.uID = uID;
tnd.uFlags = NIF_MESSAGE|NIF_ICON|NIF_TIP;
tnd.uCallbackMessage = MYWM_ICON;
tnd.hIcon = hIcon;
wsprintf(tnd.szTip,lpszTip);
res = Shell_NotifyIcon(dwMessage, &tnd);
if (hIcon)
DestroyIcon(hIcon);
return res;
}




标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 在Windows桌面创建快捷方式

下一篇: WindowsNT下Service的编程

热门词条
热门标签