MFC界面(一)在对话框上添加最小化功能.
来源:互联网 发布:linux oracle 安装 编辑:程序博客网 时间:2024/06/07 06:37
首先,在对话框的属性中样式选项中勾选最大化和最小化.接下来:
1:在XXXDlg.h中
增加成员变量 NOTIFYICONDATA nid;
增加消息函数声明,就放在其他很多的afx_msg系列函数一起就行:
afx_msg void OnNotifyIcon(WPARAM, LPARAM);
2:在cpp中修改如下内容:
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE static char THIS_FILE[] = __FILE__;
#endif
在以上内容段下面增加如下自定义消息定义
#define WM_NOTIFY_ICON WM_USER + 101
BEGIN_MESSAGE_MAP(CNotifyIconDlg,CDialog) //{{AFX_MSG_MAP(CNotifyIconDlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_MESSAGE(WM_NOTIFY_ICON, OnNotifyIcon) 在这段函数中增加这句消息映射 //}}AFX_MSG_MAP END_MESSAGE_MAP()
找到这段函数,并修改成这样
void CNotifyIconDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
if (nID == SC_MINIMIZE)
{
ShowWindow(SW_HIDE);
ZeroMemory(&nid, sizeof(nid));
nid.cbSize = sizeof(NOTIFYICONDATA);
nid.hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
nid.hWnd = m_hWnd;
strcpy(nid.szTip, "提示信息");
nid.uCallbackMessage = WM_NOTIFY_ICON;
nid.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP; Shell_NotifyIcon(NIM_ADD, &nid);
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
}
cpp文件末尾增加如下函数:
void CNotifyIconDlg::OnNotifyIcon(WPARAM wParam, LPARAM lParam)
{
if (lParam == WM_LBUTTONDOWN || lParam == WM_RBUTTONDOWN)
{
ShowWindow(SW_SHOW);
}
}
这个函数通过编译器的向导生成框架,并增加Shell_NotifyIcon这句 BOOL CNotifyIconDlg::DestroyWindow()
{
// TODO: Add your specialized code here and/or call the base class Shell_NotifyIcon(NIM_DELETE, &nid);
return CDialog::DestroyWindow();
}
以上是VC++6.0实现
- MFC界面(一)在对话框上添加最小化功能.
- MFC一运行最小化,去除或添加该功能
- MFC对话框添加菜单项,最大化,最小化
- MFC基于对话框最小化到托盘,并鼠标右键添加菜单以及对应菜单功能
- 在MFC对话框界面中添加工具栏,控制条
- MFC中在界面上添加背景图片的方法
- MFC对话框最小化响应
- MFC中实现对话框最小化到托盘功能
- MFC添加消息、隐藏对话框项目界面
- 界面篇--在对话框中添加图片,再在图片上添加按钮
- 在MFC中让对话框最小化到托盘
- android 在界面上添加一不会消失的按键
- 在对话框上添加视图
- 在对话框上添加状态栏
- opencv [c++版] 学习笔记(2) 在MFC基于对话框界面上播放视频
- MFC对话框最小化到托盘
- MFC对话框最小化到托盘
- MFC对话框最小化到托盘
- 寻找最远点对
- linux ftp总结
- JAVA中String、StringBuffer、StringBuilder的区别
- @Test
- java线程
- MFC界面(一)在对话框上添加最小化功能.
- Windows 文件属性
- SPIPGM for DHGPP
- Java学习——网络编程(服务器端支持多个客户端同时工作)
- plsql打印图形
- MFC界面(二)Radio Button 单选框
- windows编程学习笔记
- log4Net使用及配置注解(整理)
- Boost BOOST_FOREACH的扩展