如何控制mouse_event在指定的窗口内才起作用?
我用定时器发出mouse_event消息,我想让它只在指定的窗口内才发出mouse_event,当把鼠标移开指定的窗口时,就停定时器,该如何做呢?还有我是通过注册的热键来启用定时器的。
void CmousetestDlg::OnBnClickedOk()
{
RegisterHotKey(GetSafeHwnd(),0,0,VK_F1);
//ASSERT(m_isKeyRegistered != FALSE);
}
void CmousetestDlg::OnTimer(UINT nIDEvent)
{
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
Sleep(5);// TODO: 在此添加消息处理程序代码和/或调用默认值
CDialog::OnTimer(nIDEvent);
}
LONG CmousetestDlg::OnHotKey(WPARAM wParam,LPARAM lParam)
{
if(wParam==0)
{
SetTimer(1,1000,NULL);
}
}