WIN32API 实现托盘里的气球(tips)制作- 原创,keminar, - Powered by ...

VC6自带的ShellApi.h和Shell32.lib库文件版本太旧,不提供对系统托盘API新特性的支持。

升级SDK 参见 

   

定义在stdafx.h文件   
#define   _WIN32_IE   0x0500  

要包含的头文件  
#include   <shellapi.h>   
#pragma   comment(lib,   "shellapi.lib")

两个函数

  1. void BuildTrayIcon(HWND hwnd) //最小化到托盘    
  2. {   
  3.   
  4.     NOTIFYICONDATA notifyIconData;   
  5.     ZeroMemory( ¬ifyIconData, sizeof( notifyIconData ) );   
  6.     notifyIconData.cbSize           = sizeof( notifyIconData );   
  7.     notifyIconData.uFlags           = NIF_ICON | NIF_MESSAGE | NIF_TIP|NIF_INFO;   
  8.     notifyIconData.hIcon            = LoadIcon((HINSTANCE) GetWindowLong(hwnd, GWL_HINSTANCE) ,   
  9.         MAKEINTRESOURCE(IDI_ICONAPP));   
  10.     notifyIconData.uID              = IDI_ICONAPP;    
  11.     notifyIconData.hWnd             = hwnd;   
  12.     notifyIconData.uCallbackMessage = WM_CLICKBIT; //自定义消息,在Myfunction.h中定义   
  13.     lstrcpy(notifyIconData.szTip, TEXT("xxx"));   
  14.   
  15.     notifyIconData.dwState =    
  16.     notifyIconData.uTimeout = 5000/*超时毫秒数*/;        
  17.     notifyIconData.dwInfoFlags = NIIF_NONE;      
  18.     lstrcpy(notifyIconData.szInfoTitle,   TEXT("托盘化;-):"));   
  19.     lstrcpy(notifyIconData.szInfo,   TEXT("没有关闭哦。 嘿嘿~~~"));      
  20.   
  21.     Shell_NotifyIcon( NIM_ADD, ¬ifyIconData );   
  22. }   
  23. //销毁系统托盘图标    
  24. void DestroyTrayIcon(HWND hwnd)                
  25. {   
  26.     NOTIFYICONDATA notifyIconData;   
  27.     ZeroMemory(¬ifyIconData, sizeof(notifyIconData));   
  28.     notifyIconData.cbSize = sizeof( notifyIconData );    
  29.     notifyIconData.uID    = IDI_ICONAPP;   
  30.     notifyIconData.hWnd   = hwnd;   
  31.     Shell_NotifyIcon(NIM_DELETE, ¬ifyIconData);     
  32. }  

 

参考:

« | »

郑重声明:资讯 【WIN32API 实现托盘里的气球(tips)制作- 原创,keminar, - Powered by ...】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——