MFC总结(4)---MFC中如何使用子控件向父控件发送自定义消息
来源:互联网 发布:怎样申请淘宝直播间 编辑:程序博客网 时间:2024/06/05 23:53
准备工作:
需求:
我们现在想右键点击ListConsole 上的item,弹出Memu菜单,当选中Menu菜单后,对选中的进程进行处理。
我这里使用的是,子控件向父控件发送自定义消息解决。
子控件---ListConsole
父控件---TabConsole
步骤:
1、在工程中的stdafx.h文件中定义一些用于判断是何种消息宏
//进程菜单操作#define WM_USER_PROC_FLUSH(WM_USER + 4)//刷新#define WM_USER_PROC_THREAD(WM_USER + 5)//线程#define WM_USER_PROC_MODULE(WM_USER + 6)//模块#define WM_USER_PROC_KILL(WM_USER + 7)//杀死进程#define WM_USER_PROC_OUTFILE(WM_USER + 8)//导入文件
2、在子控件中给各个Munu添加事件,下面以刷新按钮作为介绍,添加COMMAND 事件
然后添加发送到父控件的消息 ,代码 如下:
这里有两种做法;
a、使用API方式
::SendMessage(GetParent()->m_hWnd, WM_USER_PROC_FLUSH, 0, (LPARAM)WM_USER_PROC_FLUSH);
b、使用MFC方式
GetParent()->SendMessage( WM_USER_PROC_FLUSH, 0, (LPARAM)WM_USER_PROC_FLUSH);
void CMyListCtrl::MyProcessFlush(){// TODO: 在此添加命令处理程序代码//使用的window//::SendMessage(GetParent()->m_hWnd, WM_USER_PROC_FLUSH, 0, (LPARAM)WM_USER_PROC_FLUSH);//使用的是mfcGetParent()->SendMessage( WM_USER_PROC_FLUSH, 0, (LPARAM)WM_USER_PROC_FLUSH);}void CMyListCtrl::MyProcessModule(){// TODO: 在此添加命令处理程序代码GetParent()->SendMessage(WM_USER_PROC_MODULE, 0, (LPARAM)WM_USER_PROC_MODULE);}void CMyListCtrl::MyProcessThread(){// TODO: 在此添加命令处理程序代码::SendMessage(GetParent()->m_hWnd, WM_USER_PROC_THREAD, 0, (LPARAM)WM_USER_PROC_THREAD);}void CMyListCtrl::MyProcessKill(){// TODO: 在此添加命令处理程序代码::SendMessage(GetParent()->m_hWnd, WM_USER_PROC_KILL, 0, (LPARAM)WM_USER_PROC_KILL);}void CMyListCtrl::MyProcessOutFile(){// TODO: 在此添加命令处理程序代码::SendMessage(GetParent()->m_hWnd, WM_USER_PROC_OUTFILE, 0, (LPARAM)WM_USER_PROC_OUTFILE);}
LRESULT CProcessDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam){// TODO: 在此添加专用代码和/或调用基类switch (message){case WM_USER_PROC_FLUSH:MessageBox(_T("WM_USER_PROC_FLUSH"), 0, 0);break;case WM_USER_PROC_THREAD:MessageBox(_T("WM_USER_PROC_THREAD"), 0, 0);break;case WM_USER_PROC_MODULE:MessageBox(_T("WM_USER_PROC_MODULE "), 0, 0);break;case WM_USER_PROC_KILL:MessageBox(_T("WM_USER_PROC_KILL "), 0, 0);break;case WM_USER_PROC_OUTFILE:MessageBox(_T("WM_USER_PROC_OUTFILE "), 0, 0);break;}return CDialogEx::WindowProc(message, wParam, lParam);}
相关代码
http://download.csdn.net/detail/obuyiseng/9209957
0 0
- MFC总结(4)---MFC中如何使用子控件向父控件发送自定义消息
- MFC如何自定义消息与在线程中向主窗体控件发送数据
- 向子控件发送消息(消息反射)
- MFC如何从view类向自定义类中发送消息
- MFC 自定义消息 和 子对话框 父对话框 发送消息
- MFC子窗口向父窗口发送消息
- MFC子窗口向父窗口发送消息
- MFC子窗口向父窗口发送消息
- MFC子窗口向父窗口发送消息
- MFC 向指定窗口发送自定义消息
- MFC 向指定窗口发送自定义消息
- MFC 向指定窗口发送自定义消息
- 如何在mfc中通过线程向主窗口发送数据或者是访问控件
- vc如何自定义消息与在线程中向主窗体控件发送数据
- vc如何自定义消息与在线程中向主窗体控件发送数据
- MFC子窗口向父窗口发送消息(测试成功20110117)
- MFC子窗口向父窗口发送消息(测试成功20110117)
- MFC子窗口向父窗口发送消息(测试成功20110117)
- Android四大图片缓存框架之-Fresco之initialize(二)
- 数据库SQL面试题七则
- Cocos2d-JS屏幕适配
- PhoneGap小窥(1)
- #include指令
- MFC总结(4)---MFC中如何使用子控件向父控件发送自定义消息
- XMPP 协议工作流程详解
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十九)
- 冲突域和广播域
- POJ 2492 A Bug's Life (高级并查集||带权并查集 ||二分图的判断+二维vector)
- python自学之文件
- Java归并算法递归实现
- No5 触摸事件
- Kaptcha生成验证码