oceanwind 发表于 2010-12-3 08:41:51

在这个窗口中输入该用哪个函数呢

如图   这个窗口是当主程序在活动状态 在键盘输入一个字字符后它才跳出来
且窗口信息如图示(跳出来的主窗口)
(这是跳出来窗口下面部份的输入栏信息)
在这个窗口的输入栏部份输入象数字"066"该用哪个函数呢
我原用 SEND("066") 不是很稳定 大部份时间结果是输入0或是06 也把SendKeyDownDelay 改成200了 也是不稳定
参见贴子http://www.autoitx.com/forum.php?mod=viewthread&tid=20133&highlight=%CA%FD%D7%D6
请高手指点
谢谢先
我的代码部份如下
开机 打开宽带连接 打开 3个程序 其中第2个程序(大智慧软件) 想输入066



Opt("WinTitleMatchMode", 2)
Opt("SendKeyDelay", 200)
Run(@ComSpec & " /c " & 'rasphone -d 宽带连接', "", @SW_HIDE);调用建立好的宽带连接来连接
WinWait("连接 宽带连接","要更改保存的密码,请单击这里")
ControlClick("连接 宽带连接","要更改保存的密码,请单击这里","Button4")
Sleep(2000)
Run("D:\Stock\dzh2\dzh2.exe")
WinWait("大智慧新一代接收系统V","更改网络运营商")
ControlClick("大智慧新一代接收系统V","更改网络运营商","Button4")
Sleep(1000)
IfWinExists("大智慧 - ") Then
       
        WinActivate("大智慧 - ")      
       
EndIf   
    Sleep(500)
    Send("066")       
        Sleep(500)
        Send("{ENTER}{ENTER}")
        Send("!P")
        send("{DOWN 8}{ENTER}")
        mouseClick("left", 659, 199, 2)
        send("!P")
        send("{DOWN 9}{RIGHT}{DOWN 2}{ENTER}")
        mouseClick("right", 659, 199, 1)
        send("{DOWN 8}{ENTER}")
Run("D:\Stock\HXHCRS\TdxW.exe")
WinWait("华西证券华彩人生V","请选择营业部")
ControlClick("华西证券华彩人生V6","请选择营业部","")
Sleep(1000)
Run("D:\Entertainment\IM\yy-2.0\Start.exe")

kaige 发表于 2010-12-9 16:35:55

路过。帮楼主顶一下

benkel 发表于 2010-12-9 21:03:30

对于没标题而且还是系统数字类的窗口,用窗口句柄,比较准确,具体可以在程序中加一个热键来获取
例如:HotKeySet("{home}","getwinhwnd")
While 1
        Sleep(1000)
WEnd

Func getwinhwnd()
        $hwnd = WinGetHandle("")
        ConsoleWrite($hwnd & @CRLF)
EndFunc

benkel 发表于 2010-12-9 21:04:46

WinGetHandle("")是获取当前激活的窗口的句柄,也就是在你获取前,先激活目标窗口,再按下快捷键!

lamlp 发表于 2010-12-9 21:12:08

我是来学习的

oceanwind 发表于 2010-12-10 12:05:13

谢谢楼上的朋友...
页: [1]
查看完整版本: 在这个窗口中输入该用哪个函数呢