如何用代码触发别的应用程序的按钮?

eaststar 2001-08-04 08:37:40
具体一点,就拿“确定”按钮为例,1,先获得该按钮的句柄(我用的是 GetNextDlgTabItem,可以吧)。 2.问题重点:如何用代码把那个按钮“按下去”?
...全文
271 点赞 收藏 27
写回复
27 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
shiyutao2010 2001-08-08
gz
回复
freetime 2001-08-08
得到窗口位置,模拟鼠标单击。
回复
horsehorse 2001-08-07
以OK按钮为例:
::PostMessage(hWnd, WM_COMMAND, IDOK, BN_CLICKED);
hWnd是包含OK按钮的对话框的句柄。
回复
eaststar 2001-08-07
谢谢各位问题解决了
回复
wenjunlin2000 2001-08-07
用FindWindow和FindWindowEx找到那个窗口的句子柄,再用PostMessage给该句柄发消息。
回复
cloudshadow1 2001-08-07
获得按钮句柄:
HWND FindWindow(LPCTSTR lpClassName,LPCTSTR lpWindowName);
可获得顶级窗口的HANDLE(按钮的父窗口)。
HWND FindWindowEx(HWND hwndParent,HWND hwndChildAfter,LPCTSTR lpszClass,LPCTSTR lpszWindow );
可获得按钮的句柄。
以上的参数可通过VISUAL STUDIO自带的SPY++获得。
可以向那个按钮发送鼠标按下去时两个消息,
1。左键按下:
::SendMessage((HWND)0x00000908,WM_LBUTTONDOWN,MK_LBUTTON,0);
2。左键松开:
::SendMessage((HWND)0x00000908,WM_LBUTTONUP,0,0);
其中第一个参数为我取得的按钮的HANDLE。
回复
wmouse 2001-08-07
gz
回复
flyingknight 2001-08-07
想办法找到该按钮...用spy++可以看到该应用程序的主窗口,子窗口....直到该按钮...可以通过窗口名,类名等来判断...找到以后SendMessage就可以了...至于具体方法,我可以提供类似源代码...hongbo.yu@263.net
回复
codica 2001-08-07
如果该该控件在程序主窗口内,就比较容易,用EnumWindows枚举到该窗口,在用sendmessage()发送该改控件即可
codica@sina.com
回复
jisheng 2001-08-07
呵呵……sendmessage~
回复
MSXP2 2001-08-07
ok
回复
azuo_lee 2001-08-07
最简单的办法,而且可以模拟按钮按下的动作:
SendMessage(hwndButton, BM_CLICK, 0, 0);
它会给Button先发一个LBUTTONDOWN,再发一个LBUTTONUP,完全模拟按钮动作。
回复
eaststar 2001-08-06
显然不行!
回复
panda_w 2001-08-06
::PostMessage(hWnd,WM_KEYDOWN,13,0x011c0001);
回复
blcr 2001-08-06
直接调用该按扭得函数不可以吗?
回复
kenny_yuan 2001-08-05
发WM_COMMAND消息,需要有按钮的ID,找按钮的ID可用Spy++

/*大家都没做过SDK吧?*/
回复
eaststar 2001-08-05
111222告诉我具体一点,谢了!
回复
111222 2001-08-04
alphapaopao(炮炮):

发什么消息?WM_请你响应?
回复
alphapaopao 2001-08-04
发消息给框架窗口,而不是发给那个按钮

呵呵
回复
111222 2001-08-04
获得窗口的rect
模拟鼠标在该rect内按下、弹起
回复
加载更多回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2001-08-04 08:37
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……