VC++ 添加托盘图标和气泡
来源:互联网 发布:美发大全软件下载 编辑:程序博客网 时间:2024/04/29 22:35
添加成员变量 NOTIFYICONDATA m_tnd;
新建图标
BOOL SetupTrayIcon(HWND hwnd){ //ZeroMemory(&m_tnd, sizeof(NOTIFYICONDATA)); m_tnd.cbSize = sizeof( NOTIFYICONDATA ); m_tnd.hWnd = hwnd;//this->GetSafeHwnd();//所在对话框窗口句柄 m_tnd.uID = IDR_MAINFRAME; m_tnd.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP; //m_tnd.dwInfoFlags = NIIF_USER; m_tnd.uCallbackMessage = WM_LBUTTONDBLCLK; //m_tnd.uTimeout = 3; m_tnd.hIcon = m_hIcon;//需要指定一个图标!这里是所在对话框的图标 wcscpy_s(m_tnd.szTip,_T("我的任务栏程序")); return Shell_NotifyIcon( NIM_ADD, &m_tnd );}
删除图标
BOOL RemoveTrayIcon(){ return Shell_NotifyIcon( NIM_DELETE, &m_tnd );}
显示气泡
BOOL ShowToolTip(LPCTSTR szMsg,LPCTSTR szTitle,DWORD dwInfoFlags,UINT uTimeout){ m_tnd.cbSize=sizeof(NOTIFYICONDATA); m_tnd.uFlags = NIF_INFO; m_tnd.uVersion = NOTIFYICON_VERSION; m_tnd.uTimeout = uTimeout; m_tnd.dwInfoFlags = dwInfoFlags; wcscpy_s( m_tnd.szInfoTitle, szTitle );//气泡标题 wcscpy_s( m_tnd.szInfo, szMsg );//气泡内容 //wcscpy_s( m_tnd.szTip, _T("tip") ); SetTimer(1, 1000, NULL); return Shell_NotifyIcon( NIM_MODIFY, &m_tnd );}
为了让气泡消失,设置一个定时器,过一段时间将气泡的提示信息设为空。就能关闭气泡显示了。
BOOL CloseToolTip(){ m_tnd.cbSize=sizeof(NOTIFYICONDATA); m_tnd.uFlags = NIF_INFO; wcscpy_s( m_tnd.szInfo, _T("") );//气泡内容 设置为空即可取消气泡提示 return Shell_NotifyIcon( NIM_MODIFY, &m_tnd );}void OnTimer(UINT_PTR nIDEvent){ // TODO: 在此添加控件通知处理程序代码 KillTimer(nIDEvent); CloseToolTip();}
调用方法:
在OnInitDialog调用 SetupTrayIcon(m_hWnd);
在OnClose里调用 RemoveTrayIcon
在某个按钮事件里写ShowToolTip(_T("测试消息"), _T("测试"));
注意:targetver.h需要修改如下2个定义:
#ifndef WINVER // 指定要求的最低平台是 Windows Vista。//#define WINVER 0x0600 // 将此值更改为相应的值,以适用于 Windows 的其他版本。#define WINVER 0x0501 #endif#ifndef _WIN32_WINNT // 指定要求的最低平台是 Windows Vista。//#define _WIN32_WINNT 0x0600 // 将此值更改为相应的值,以适用于 Windows 的其他版本。#define WINVER 0x0501 #endif
- VC++ 添加托盘图标和气泡
- vc添加任务栏托盘图标
- VC程序托盘显示和气泡显示
- 添加、移除托盘图标以及气泡提示
- VC托盘气泡做法
- VC实现托盘气泡提示
- VC实现托盘气泡提示
- VC下添加和删除自己系统托盘图标,及托盘事件的响应
- VC下添加和删除系统托盘图标,及托盘事件的响应
- 托盘图标的添加和消息响应
- Java程序添加托盘图标和托盘弹出菜单
- JAVA添加托盘图标和托盘弹出式菜单
- vc 托盘图标
- VC 隐藏托盘图标
- shellnotifyicon,托盘图标气泡提示问题
- 在托盘图标中添加气球提示(VC版)
- 添加托盘图标
- VC托盘气泡显示不出来
- 好好学C语言
- 再生龙的使用
- windows下批量修改文件(或文件夹)权限或所有者
- 使用 /sys 文件系统访问 Linux 内核
- oracle之初体验-rman命令(二)
- VC++ 添加托盘图标和气泡
- 浅谈filter里面为什么要强制转换成httpServletRequest类型
- 算法竞赛入门经典 7.5.3 八数码问题
- C++----------------------------c++继承经典例子
- ASP.NET实验五:实现输入内容提示的功能(仿google_百度输入框提示)
- windows进程通信之共享内存那点事
- hdu1319 Prime Cuts
- css透明---css样式之美
- 操作系统概论二