在vc中将程序图标最小化到托盘中
来源:互联网 发布:墨西哥人 知乎 编辑:程序博客网 时间:2024/05/16 05:35
1.在**.h中定义消息名字,添加消息函数定义
#define WM_ICONNOTIFY WM_USER + 500 //图标响应消息(lParam)
afx_msg LRESULT OnNotifyIcon(WPARAM wParam, LPARAM lParam);
2.在**.cpp添加消息映射
ON_MESSAGE(WM_ICONNOTIFY,CtestDlgDlg::OnNotifyIcon)
3.编写最小化到托盘的函数
void CtestDlgDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
NOTIFYICONDATA nid;
nid.cbSize = (DWORD)sizeof(NOTIFYICONDATA);
nid.hWnd = m_hWnd;
nid.uID = IDD_TESTDLG_DIALOG;
nid.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;
nid.uCallbackMessage = WM_ICONNOTIFY; //自定义的消息名称
nid.hIcon = LoadIcon(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_MAINFRAME));
// IDR_MAINFRAME 是在托盘显示的图标
strcpy(nid.szTip,"程序名称"); //信息提示条为“计划任务提醒”
Shell_NotifyIcon(NIM_ADD, &nid); //在托盘区添加图标
ShowWindow(SW_HIDE); //隐藏主窗口
}
4.编写托盘的消息响应函数
LRESULT CtestDlgDlg::OnNotifyIcon(WPARAM wParam, LPARAM lParam)
{
POINT point;
CMenu menu;
GetCursorPos(&point);
//如果在托盘图标上双击左键
if ((wParam == IDD_TESTDLG_DIALOG) && (lParam == WM_LBUTTONDBLCLK))
{
ShowWindow(SW_SHOW); //显示窗体
}
//如果在托盘图标上单击右键
if ((wParam == IDD_TESTDLG_DIALOG) && (lParam == WM_RBUTTONDOWN))
{
menu.LoadMenu(IDR_MENU1); //加载系统主菜单
SetForegroundWindow(); //将程序置于桌面顶部
menu.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON,point.x, point.y, this); //在点击图标处弹出系统菜单的第一项 /
}
return 0;
}
5.编写删除托盘图标的函数
void CtestDlgDlg::OnDestroy()
{
CDialog::OnDestroy();
// TODO: 在此处添加消息处理程序代码
NOTIFYICONDATA nc;
nc.cbSize = sizeof(NOTIFYICONDATA);
nc.hWnd = m_hWnd;
nc.uID = IDD_TESTDLG_DIALOG;
Shell_NotifyIcon(NIM_DELETE, &nc); //删除系统托盘图标
}
- 在vc中将程序图标最小化到托盘中
- VC中程序最小化到托盘
- VC++中实现程序启动后隐藏窗口,最小化到托盘图标。
- VC++中实现程序启动后隐藏窗口,最小化到托盘图标。
- VC最小化程序到托盘
- VC最小化程序到托盘
- VC程序最小化到托盘
- VC最小化程序到托盘
- VC最小化到托盘程序
- VC程序最小化到托盘
- VC最小化程序到托盘
- VC最小化到托盘程序
- 在MFC中将窗口最小化到托盘
- SWT 中实现最小化到托盘图标,并只能通过托盘的弹出菜单关闭程序
- SWT 中实现最小化到托盘图标,并只能通过托盘的弹出菜单关闭程序
- VC++:如何将程序最小化到托盘
- VC++:如何将程序最小化到托盘
- VC实现将程序最小化到托盘
- jpa是什么
- Esri认证考试项目正式上线
- 程序员必须要看的 一个从事十年开发软件工程师对职业理解
- C-变量的声明与定义以及关键字extern的用法
- File Geodatabase API 即将推出
- 在vc中将程序图标最小化到托盘中
- dedecms 5.6 完美去版权方法
- 什么叫51单片机最小系统
- 对“...”路径访问被拒绝的解决办法
- 走进你不了解的对日软件外包
- 使用Microsoft Web Application Stress Tool对web进行压力测试
- ArcGIS API for Flex and ArcGIS Viewer for Flex 2.2 发布
- 20110408-半小时前,我得知何工要离职,非常难受~!
- 业务架构分析