在一个程序中控制另外一个程序的button ,要向其发送 鼠标单击事件。第一次发送的时候 总是失败,而第二次发送的时候就能成功。为什么呢?代码如下: CWnd *pWnd = FindWindow(_T("#32770"),"Test");
if( pWnd )
{
CButton *pChild = (CButton *)pWnd->GetDlgItem(dwID);
pChild->SendMessage(WM_LBUTTONDOWN,0,0);
pChild->SendMessage(WM_LBUTTONUP,0,0);
}发送消息没有任何效果。
但是如果改为连续发两次,就能成功为什么? CWnd *pWnd = FindWindow(_T("#32770"),"Test");
if( pWnd )
{
CButton *pChild = (CButton *)pWnd->GetDlgItem(dwID);
pChild->SendMessage(WM_LBUTTONDOWN,0,0);
pChild->SendMessage(WM_LBUTTONUP,0,0);
pChild->SendMessage(WM_LBUTTONDOWN,0,0);
pChild->SendMessage(WM_LBUTTONUP,0,0);}
if( pWnd )
{
CButton *pChild = (CButton *)pWnd->GetDlgItem(dwID);
pChild->SendMessage(WM_LBUTTONDOWN,0,0);
pChild->SendMessage(WM_LBUTTONUP,0,0);
}发送消息没有任何效果。
但是如果改为连续发两次,就能成功为什么? CWnd *pWnd = FindWindow(_T("#32770"),"Test");
if( pWnd )
{
CButton *pChild = (CButton *)pWnd->GetDlgItem(dwID);
pChild->SendMessage(WM_LBUTTONDOWN,0,0);
pChild->SendMessage(WM_LBUTTONUP,0,0);
pChild->SendMessage(WM_LBUTTONDOWN,0,0);
pChild->SendMessage(WM_LBUTTONUP,0,0);}
解决方案 »
- system权限进程使用CFileDialog类
- vc++MFC 背景图片的问题
- 点对点通讯问题
- 急救:请问在DLL的非模态属性表上添加诸如表格之类的ActiveX控键应该如何做?
- 一个传真的问题
- SetCapture的冲突
- 大家好,我刚用ado,我看到一个用ado的 登录 程序,有一个问题要问一下
- 看这个贴子,有关线程的
- Installshield软件在哪个网站上有下载?在上海哪儿有买?急用,帮帮忙!!!
- 关于32,64位程序的问题
- 请教高手如何在MFC中使用DirectShow!
- fatal error RC1109 : error creating Debug/CButtonST_Demo.res????
pWnd->SetFocus() pChild->SetFocus() 都试过。没有用
if( pWnd )
{
CButton *pChild = (CButton *)pWnd->GetDlgItem(dwID);
pChild->SendMessage(WM_LBUTTONDOWN,0,0);
pChild->SendMessage(WM_LBUTTONUP,0,0);
} i该如何修改
我SetActiveWindow SetFocus都试过了不行。。
if( pWnd )
{
CButton *pChild = (CButton *)pWnd->GetDlgItem(dwID);
pChild->PostMessage(WM_LBUTTONDOWN,0,0);
pChild->PostMessage(WM_LBUTTONUP,0,0);
}
现在看看了!
To send this message, call the SendMessage function as follows.
lResult = SendMessage( // returns LRESULT in lResult (HWND) hWndControl, // handle to destination control (UINT) BM_CLICK, // message ID (WPARAM) wParam, // = 0; not used, must be zero (LPARAM) lParam // = 0; not used, must be zero );