afan 发表于 2010-5-13 17:51:10

ControlClick() 点击一下控件,再继续
ControlSend() 或 ControlSetText()

倚栏听风 发表于 2010-5-13 18:55:38

问题是不想改变输入焦点,而且发送的内容中,也有中文,而 ControlSend 是不支持中文的。

倚栏听风 发表于 2010-5-13 18:57:16

现在的问题是,可以用 ControlSettext 改变编辑框内的内容了。
如何告诉窗体该编辑框内容更新了呢?
也就是模拟回车。 如何用 sendmessage 或 postmessage 来告诉窗体,该编辑框内容更新了呢? en_update 的详细用法。

倚栏听风 发表于 2010-5-14 06:27:13

我再顶一个。

倚栏听风 发表于 2010-5-14 07:22:44

我想说,哇哈哈,问题解决。

让我纠结的问题是如何告诉窗口,该编辑框完成。
其实,发送一个 wm_keydown内容为 回车键 的消息,就完全可以实现的。
$wm_keydown = 0x100
$enter = 13
$hwnd = 该编辑框控件的句柄
DllCall("user32.dll", "bool", "PostMessage", "hwnd", $Hwnd, "uint", $WM_KEYDOWN, "WPARAM", $Enter , "LPARAM", 0)

倚栏听风 发表于 2010-5-14 07:25:35

在此,我要感谢大家,给了我思路。。。。
也感谢版主童鞋的无私帮助。。 但是呢,感谢归感谢,我想说 guland 大大,即使获取不到窗口信息(其实获取到的有。),也是一样可以设置控件滴。

pusofalse 发表于 2010-5-14 08:18:02

没有什么事情是Au3做不到的,只是问题的难易而已。现在解决不了,不代表以后永远无解,认知高度超过了问题难度,问题自然就解开了。

倚栏听风 发表于 2010-5-14 10:45:54

认知高度超过了问题难度,问题自然就解开了。
说的很棒。。。 其实,很喜欢这个解决问题的过程。
在这个过程中,我对AU3又有了进一步的认识。

pusofalse 发表于 2010-5-14 16:51:14

回复 23# 倚栏听风


    我们才是不折不扣的“Au3人”,握爪~

xz00311 发表于 2010-5-16 10:29:40

我比较笨用是高级类来实现的

倚栏听风 发表于 2010-5-17 14:25:38

哈,高级类? 这个问题明显是,这个控件不在主窗口里,它在一个隐藏窗口里。
页: 1 [2]
查看完整版本: 窗口信息获取不到控件ID的奇怪问题。。。。【问题解决】 谢谢大家。。。