MFC对话框添加系统栏图标
来源:互联网 发布:mac文件无法复制到u盘 编辑:程序博客网 时间:2024/04/20 06:45
系统栏图标添加方法:(以CDialog为例)
1,在Dialog类中加入显示系统栏图标的变量 NOTIFYICONDATA m_NotifyIcon;//消息映射没有Notify…的消息,手动添加
2,在Dialog类中加入消息处理函数afx_msg LRESULT OnNotifyIcon(WPARAM wParam, LPARAM lParam) 来响应对系统栏图标的响应。
3,在BEGIN_MESSAGE_MAP(), END_MESSAGE_MAP()中间添加消息处理映射ON_MESSAGE(WM_NC, &CMyCPL2Dlg::OnNotifyIcon)
4,在Dialog类的初始化函数OnInitDialog()中添加系统栏图标初始化:
m_NotifyIcon.cbSize = sizeof(NOTIFYICONDATA);//
m_NotifyIcon.hIcon = AfxGetApp()->LoadIcon(IDI_ICON1);//图标图案,自定义
m_NotifyIcon.hWnd = m_hWnd;//
lstrcpy(m_NotifyIcon.szTip, "MY Dialog");//鼠标指示时显示提示
m_NotifyIcon.uCallbackMessage = WM_NC;//消息响应函数,实现文件加#define WM_NC 1001
m_NotifyIcon.uFlags = NIF_ICON | NIF_TIP | NIF_MESSAGE;//图标类型
Shell_NotifyIcon(NIM_ADD, &m_NotifyIcon);//系统栏添加图标
5,添加消息响应函数
LRESULT CMyCPL2Dlg::OnNotifyIcon(WPARAM wParam, LPARAM lParam)
{
if ((lParam == WM_LBUTTONDOWN)) // Lbutton down
{
ModifyStyleEx(0,WS_EX_TOPMOST);
ShowWindow(SW_SHOW); // Show Main Window
//Shell_NotifyIcon(NIM_DELETE, &NotifyIcon);
}
//...
return 0;// 添加返回值
}
6,如果有需要,可以在关闭对话框时删除系统栏图标。添加函数DestroyWindow()
BOOL CMyCPL2Dlg:DestroyWindow()
{
// TODO: Add your specialized code here and/or call the base class
Shell_NotifyIcon(NIM_DELETE, &m_NotifyIcon); // Delete Icon
return CDialog:DestroyWindow();
}
- MFC对话框添加系统栏图标
- MFC 添加系统栏图标
- MFC如何在自定义对话框中添加系统图标?
- MFC将程序添加到系统图标栏,系统托盘栏
- 添加系统栏图标
- 非MFC,使用资源给对话框添加图标
- VS2008向MFC 对话框 添加托盘图标(显示和消失)
- MFC 添加系统托盘图标
- MFC菜单添加图标
- MFC添加系统托盘图标
- mfc Ribbon 添加图标
- MFC菜单添加图标
- MFC对话框添加背景图片
- MFC对话框添加背景图片
- MFC对话框添加背景图片
- MFC 对话框添加背景图片
- MFC对话框添加状态栏
- MFC对话框添加背景图片
- mplayer的初探(一)
- Web.config 配置文件
- Effective C++
- Android对话框
- 移动定位业务学习笔记
- MFC对话框添加系统栏图标
- Python 2.7 Tutorial —— 开胃菜
- archlinux平台下 fl2440 使用minicom加dnw2烧写flash
- 关于SIM卡-GSM加密算法(转载)
- ERROR 1045 (28000): Access denied for user root@localhost (using password: no)
- 20100920卡巴最新激活码下载
- 浩方,vs 掌门人对战平台 原理
- [ASP.NET]如何防范SQL注入式攻击
- POSIX--操作系统标准