VB 如何得到窗体内控件的句柄

我是想做个登陆器,我的想法是这样的先找到该窗体的句柄,再找出该窗体上面文本框的句柄从而再投递所要输入的内容,但不知道如何去找该窗体上文本框控件的句柄,请大侠帮帮忙,最好有... 我是想做个登陆器,我的想法是这样的
先找到该窗体的句柄,再找出该窗体上面文本框的句柄从而再投递所要输入的内容,但不知道如何去找该窗体上文本框控件的句柄,请大侠帮帮忙,最好有举倒贴代码的,我没分帮帮忙谢谢,
展开
 我来答
远风的梦想家
2009-02-16 · TA获得超过2550个赞
知道大有可为答主
回答量:1389
采纳率:0%
帮助的人:0
展开全部
代码我不写了,太长了,具体思路如下:

整体是用WINDOWS API

1、findwindow 找到指定标题的窗口

如果这个窗口标题你不知道,那么一个一个遍历吧,或者枚举所有进程(进程名字你总是知道的吧?)然后在遍历整个进程中所有的窗口。

通过以上的方法,可以定位到窗口

2、GetWindow 到这个窗口里找控件

使用 GW_CHILD 常数,这样找到的就是这个窗体的子窗体(控件)的句柄了。

但是,有时候,控件是多层嵌套的,比如:窗口里有一个frame,frame里又嵌入一个frame,然后里面是一个textbox。

这样是很常见的,那么唯一的方案就是用 getwindow递归查找GW_CHILD,如果GW_CHILD返回的是0,那么就说明没有子窗体,通过递归查找,肯定就能找到你要的控件的句柄

3、发送消息

找到以后,getwindowtext、sendmessage就可以用了,WM_GETTEXT可以获得文本框文字,但是,不一定所有控件都响应这个消息,比如QQ密码框,这些加密的控件,除非你写驱动,否则恐怕很难去在这些控件上拦截、发送消息
qtdzc
2009-02-16
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
vb里面没有句柄的概念,知道窗体的名字直接.Show就行了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刘乃慧
2009-02-16 · TA获得超过235个赞
知道答主
回答量:188
采纳率:0%
帮助的人:115万
展开全部
路过,等高手出现。不过没有分的话高手是不会出现的喔!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式