runningwater 发表于 2008-11-4 10:52:32

如何得到当前文本框的内容?

想取得当前窗口活动文本框(输入光标所在的文本框,而不是鼠标光标所在的文本框)的内容,这个“当前窗口”不是自己编写的,可能是任意一个窗口。
请问如何能够得到文本框内的文字?

新手上路 发表于 2008-11-4 11:09:02

ControlGetText ( "窗口标题", "窗口文本", 控件ID)

wolfxiong 发表于 2008-11-4 13:25:31

ControlGetFocus
ControlGetText

runningwater 发表于 2008-11-4 16:50:09

似乎都不行,因为不知道目标窗口的相关信息,而且需要的还是输入光标所在的文本框,所以不能通过获取鼠标位置来得到文本框的句柄。:face (30):

gto250 发表于 2008-11-4 18:02:24

#Include <WinAPI.au3>
Dim $buffer
While 1
ToolTip(_getpassword())

WEnd



Func _gettext()
$b=_WinAPI_GetMousePos()
$HWnd=_WinAPI_WindowFromPoint($b)
$classname=_WinAPI_GetClassName($hWnd)
If StringInStr($classname,"edit")<>0Then
$var = ControlGetText($HWnd, "", $HWnd)
Return $var
Else
Return 0
EndIf
EndFunc

runningwater 发表于 2008-11-6 14:10:46

原帖由 gto250 于 2008-11-4 18:02 发表 http://www.autoitx.com/images/common/back.gif
#Include
Dim $buffer
While 1
ToolTip(_getpassword())

WEnd



Func _gettext()
$b=_WinAPI_GetMousePos()
$HWnd=_WinAPI_WindowFromPoint($b)
$classname=_WinAPI_GetClassName($hWnd)
If StringI ...

谢谢 gt 老兄的帮助,可是需要得到的是活动文本框的内容,这时鼠标不一定在文本框上,所以这种方法不能完全满足要求。
页: [1]
查看完整版本: 如何得到当前文本框的内容?