通过使用 WM_COMMAND,完成按钮的模拟点击

模拟键盘事件、鼠标事件很有用,例如自动化测试,交互系统(VNC),下面是一种很基本的控制方式:

 

void CTestDlg::OnButton1() 
{
	AfxMessageBox("【按钮1】 被点击");
}

void CTestDlg::OnButton2() 
{
	SetWindowText("【按钮2】 被点击");
}


//
// 下面模拟完成整个按钮的点击
//
void CTestDlg::OnButton3() 
{
	//完成单击【按钮1】事件
	PostMessage(WM_COMMAND, MAKEWPARAM(IDC_BUTTON1, BN_CLICKED), (LPARAM)(GetDlgItem(IDC_BUTTON1)->m_hWnd));

	//完成单击【按钮2】事件
	PostMessage(WM_COMMAND, MAKEWPARAM(IDC_BUTTON2, BN_CLICKED), (LPARAM)(GetDlgItem(IDC_BUTTON2)->m_hWnd));

	//完成单击【按钮N】事件
	//................
	//................

}

另外一篇文章见:

keybd_event,mouse_event 模拟产生键盘事件、鼠标事件的使用 (http://blog.csdn.net/dijkstar/article/details/7220004)

你可能感兴趣的:(command,测试,button)