VB 获取文本的API
用vb有没有办法通过API获取某个程序之中文本框的内容?比如有个文本框之中有文字,我能不能通过编程获取这个程序文本框的内容,需要那些元素或者API?...
用vb有没有办法通过API获取某个程序之中文本框的内容?比如有个文本框之中有文字,我能不能通过编程获取这个程序文本框的内容,需要那些元素或者API?
展开
2013-08-11
展开全部
可以的,使用句柄系列操作句柄:句柄有很多种,这里讲窗口句柄,在WINDOWS系统中,每一个窗口都有一个句柄,它是一组数字,取得它就能对窗口做任何事(完全当作自己窗口都行...当然这要看杀毒软件...),注意:窗口每次打开的句柄都不同.Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long '获取句柄使用这个API取得窗口的句柄.参数:类名,标题类名如果你不知道的话就丢个常量进去:vbnullstring标题,就是窗体上面的蓝色框里边的字(最小化按钮的右边)
然后还有一个API是取得子窗体(按钮,输入框这些就是子窗体)句柄的.我忘了无法提供,自己找找吧
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Const GW_CHILD = (5)
Private Const GW_HWNDNEXT = (2)再用这个取得句柄里边的文本,也就是你所谓的"别人的编辑框里面的字",但是有一点需要注意:使用这个API取得文本,返回内容需要一个*255的String变量中转,这样:Dim 文本 As String * 255,编辑框文本 as String
GetWindowText (句柄), (文本), (254)
编辑框文本= (文本)这样,[编辑框文本]变量里面就是你要的
然后还有一个API是取得子窗体(按钮,输入框这些就是子窗体)句柄的.我忘了无法提供,自己找找吧
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Const GW_CHILD = (5)
Private Const GW_HWNDNEXT = (2)再用这个取得句柄里边的文本,也就是你所谓的"别人的编辑框里面的字",但是有一点需要注意:使用这个API取得文本,返回内容需要一个*255的String变量中转,这样:Dim 文本 As String * 255,编辑框文本 as String
GetWindowText (句柄), (文本), (254)
编辑框文本= (文本)这样,[编辑框文本]变量里面就是你要的
2013-08-11
展开全部
'加一个Timer1控件Public ss As IntegerPrivate Sub Form_Load()
ss = 90Timer1.Interval = 1000
End SubPrivate Sub Timer1_Timer()
Me.Caption = ss
ss = ss - 1
If ss = 0 Thenss = 90
End IfEnd Sub
ss = 90Timer1.Interval = 1000
End SubPrivate Sub Timer1_Timer()
Me.Caption = ss
ss = ss - 1
If ss = 0 Thenss = 90
End IfEnd Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询