模拟按钮控件BN_CLICKED消息事件
2015-05-16 22:13
417 查看
一、 现有一对话框如下
单击按钮
会弹出Hello消息框,如下图所示:
现要在点击按钮
时模拟
的单击响应事件,实现代码如下:
void CTestDlg::OnBnClickedBtnTest() { // TODO: Add your control notification handler code here WPARAM wParam; wParam = BN_CLICKED; wParam <<= 16; // 左移16位 wParam |= IDC_BTN_SAY_HELLO; // 按位或 LPARAM lParam; lParam = (LPARAM)::GetDlgItem(this->GetSafeHwnd(), IDC_BTN_SAY_HELLO); ::PostMessage(this->GetSafeHwnd(), WM_COMMAND, wParam, lParam); }
如此,单击按钮Test就会弹出Hello消息框。
二、 现有如下两个对话框程序Test.exe和Hisin.exe
单击
按钮会弹出Hello消息框,如下图所示:
现要实现点击Hisin对话框中的
按钮,模拟Test对话框中的
单击事件。实现代码如下:
void CHisinDlg::OnBnClickedBtnTest() { // TODO: Add your control notification handler code here HWND hWndDlgTest = ::FindWindow(NULL, TEXT("Test")); HWND hWndBtnSayHello = ::FindWindowEx(hWndDlgTest, NULL, NULL, TEXT("Say Hello")); WPARAM wParam; wParam = BN_CLICKED; wParam <<= 16; // 左移16位 wParam |= ::GetDlgCtrlID(hWndBtnSayHello); LPARAM lParam; lParam = (LPARAM)hWndBtnSayHello; ::PostMessage(hWndDlgTest, WM_COMMAND, wParam, lParam); }
如此,单击Hisin对话框中的Test按钮就会使Test对话框中弹出Hello消息框。
相关文章推荐
- 模拟按钮控件BN_CLICKED消息事件
- 使用MFC 发送消息模拟按钮按下事件
- 使用MFC 发送消息模拟按钮按下事件
- 使用MFC 发送消息模拟按钮按下事件
- 动态创建一个CButton按钮并实现其ON_BN_CLICKED消息
- MFC 发送消息模拟按钮按下事件
- 动态创建一个CButton按钮并实现其ON_BN_CLICKED消息
- MFC 通过发送消息完成按钮操作模拟鼠标单击事件的发生的问题
- 使用MFC 发送消息模拟按钮按下事件
- 使用MFC 发送消息模拟按钮按下事件
- 使用MFC 发送消息模拟按钮按下事件
- 使用MFC 发送消息模拟按钮按下事件
- 使用MFC 发送消息模拟按钮按下事件
- 使用MFC 发送消息模拟按钮按下事件
- .NET一个页面多个Button按钮事件避免数据验证控件RequiredFieldValidator冲突
- CListCtrl控件主要事件及LVN_ITEMCHANGED消息和鼠标双击列表项事件的处理
- vc响应最大化最小化按钮的事件或消息
- 一步一步实现自己的模拟控件(9)——消息处理
- VC2008中处理CStatic控件的单击STN_CLICKED消息
- 从CButton派生一个可检测按下状态和定时重复发送消息的按钮控件