veve 发表于 2011-10-18 23:04:43

搜索三天未解决 Instance: ClassnameNN :ID: 用一次变一次 请教如何解决 已解决

本帖最后由 veve 于 2011-10-19 22:01 编辑

Title:QUICK

Class:TFREP_WS_R

Position:   549, 103

Size:   757, 667

Style:0x16CB0000

ExStyle:    0x00010100

Handle: 0x004E04E0



>>>> Control <<<<

Class:TEdit

Instance:   26    ( 此处值26会变)

ClassnameNN:    TEdit26   ( 此处值26会变)

Name:       ( 此名字为空)

Advanced (Class):       ( 此处值26会变)

ID: 263610   ( 此处ID值会变)


现在想用 ControlSetText("", "","TEdit26",“文本” )   但ID 一直在变

我该怎么办请教高手 !!
用send 已确定无法实现

afan 发表于 2011-10-18 23:14:39

什么程序

veve 发表于 2011-10-18 23:27:03

公司用的一个程序   像是VB写的我是将Excel 读出的一个文本内容写进去的本来用Send 可以写 但不知道为什么总是乱码 怎么转换只要输到 ClassnameNN:    TEdit26就乱码
同样的send 记事本就不乱码 。。。
一直无法解决

但用 ControlSetText 就正常 ,但无法锁定ID 。。。

afan 发表于 2011-10-18 23:35:26

枚举坐标处的控件,如果大小相符且可见就是了

veve 发表于 2011-10-19 12:18:59

请教大小相符该如何判断 ,可否出代码一下 ,请教了

afan 发表于 2011-10-19 12:33:13

WinGetClassList() ;获取窗口的所有控件类列表
ControlGetPos() ;获取控件相对其窗口的坐标位置和大小

xms77 发表于 2011-10-19 12:45:27

为什么要用excel读出文本文件呢?有什么特定的意义吗?

veve 发表于 2011-10-19 12:55:32

回复 6# afan

多谢afan 老大
在学习了 非常感谢 应该有这个思路就可以解决了 。。。

veve 发表于 2011-10-19 12:56:01

回复 7# xms77


    我要批量处理的数据在Excel中呵呵

ylsfwb 发表于 2011-10-19 13:48:30

是什么东西,看看~~~

veve 发表于 2011-10-19 22:02:26

for $pid =1 to 100
                $pos = ControlGetPos("", "","TEdit"&$pid )
                                if$pos == "56" Then ;56为控件的y 坐标唯一的。。。
               ControlSetText("", "","TEdit"&$pid, $h9 )
                               ExitLoop
                             EndIf
                        Next


已实现   谢谢各位特别是afan 大 大

yufei8051 发表于 2012-11-7 10:24:03

好的好的,看来有解决办法,谢谢楼上的楼上

yufei8051 发表于 2012-11-8 20:53:42

看了半天,还是感觉这个可靠

huangke 发表于 2015-12-30 13:49:59

for $pid =1 to 100
                $pos = ControlGetPos("", "","TEdit"&$pid )
               ...
veve 发表于 2011-10-19 22:02 http://autoitx.com/images/common/back.gif


    {:face (239):}刚刚要用上啊,,谢谢

柚子爸爸 发表于 2017-9-19 22:38:22

回复 6# afan

控件ID可以使用坐标方式描述吗?大神
页: [1]
查看完整版本: 搜索三天未解决 Instance: ClassnameNN :ID: 用一次变一次 请教如何解决 已解决