老榆头 发表于 2009-11-26 15:05:21

本帖最后由 老榆头 于 2009-11-26 15:27 编辑

不好意思,刚才出去了一下,现在回来了



我的也是xp sp3

使用后面那个带有”测试文本“的脚本,文字是有的
但一换回原来那个,就不行
而且a.exe结束之后也不能自动关闭

afan 发表于 2009-11-26 15:40:20

没执行完,不会关闭Dim $a = 1, $bt = "选择要加载的文件"
If $CmdLine = 1 Then
        AdlibRegister('sr')
        While $a = 1
                Sleep(50)
        WEnd
EndIf
Func sr()
        If WinActive($bt) Then
                ControlSetText($bt, "", "Edit1", $CmdLine)
                ControlClick($bt, "", "Button1")
                $a = 0
        EndIf
EndFunc   ;==>sr

老榆头 发表于 2009-11-26 16:32:23

afan好友,还不可以
对话框弹出后,就停在哪里,文件名位置也没有内容出现
网页上的那个文本框内也没有内容

不好意思,给你添麻烦了,再次感谢

afan 发表于 2009-11-26 17:44:09

本帖最后由 afan 于 2009-11-26 17:45 编辑

回复 33# 老榆头

这样吧,咱们一步步来
1,新建个文件 c:\test\1.txt
2,将以下代码编译为 a.exeAdlibRegister('sr')
Dim $a = 1, $bt = "选择要加载的文件"
While $a = 1
      Sleep(50)
WEnd

Func sr()
      If WinActive($bt) Then
                ControlSetText($bt, "", "Edit1", 'c:\test\1.txt')
                ControlClick($bt, "", "Button1")
                $a = 0
      EndIf
EndFunc   ;==>sr3,运行“a.exe”
4,打开网页
5,点击浏览

此时什么状况?是否达到预期的效果,且a.exe已退出?还是停留在哪一步?

老榆头 发表于 2009-11-27 21:32:39

本帖最后由 老榆头 于 2009-11-27 21:33 编辑

耶,可以了
谢谢afan好友帮忙解决了问题,更要感谢的是afan好友的不厌其烦
问题得以解决,感谢

前面的代码不成功原因主要是我将afan给的代码直接拿过来用,而没有仔细看其中的控件名称
结果最后一个控件名称实际上应该为Button2

最后成功的代码如下Dim $a = 1, $bt = "选择要加载的文件"
If $CmdLine = 1 Then
                AdlibRegister('sr')

      While $a = 1
                Sleep(50)
      WEnd
EndIf
Func sr()
      If WinActive($bt) Then
                ControlSetText($bt, "", "Edit1", $CmdLine)
                ControlClick($bt, "", "Button2")
                $a = 0
      EndIf
EndFunc   ;==>sr再次感谢afan好友

老榆头 发表于 2009-11-27 21:46:45

难以掩饰问题解决之后的激动心情
谢谢afan

这是我第一次还知道有$CmdLine这个的用法
谢谢

afan 发表于 2009-11-27 21:49:59

回复 36# 老榆头


    不用客气,能帮你解决问题就好~! 我理解那种解决不了问题而煎熬的感觉,呵呵~

78391493 发表于 2009-11-27 21:55:10

Adlib不是多线程 跟UI线程是一起的只是在一定时间内触发而已

老榆头 发表于 2009-11-29 12:13:31

回复老榆头


    不用客气,能帮你解决问题就好~! 我理解那种解决不了问题而煎熬的感觉,呵呵~
afan 发表于 2009-11-27 21:49 http://www.autoitx.com/images/common/back.gif


    是的,的确是煎熬
  再次感谢

老榆头 发表于 2009-11-29 12:14:32

Adlib不是多线程 跟UI线程是一起的只是在一定时间内触发而已
78391493 发表于 2009-11-27 21:55 http://www.autoitx.com/images/common/back.gif


    谢谢

lanfengc 发表于 2010-2-5 18:43:41

关键的代码是用了这句。。
ControlSetText("","","","")

afan 发表于 2010-2-5 18:48:17

关键的代码是用了这句。。
ControlSetText("","","","")
lanfengc 发表于 2010-2-5 18:43 http://www.autoitx.com/images/common/back.gif


    不是,是就没这讨论了
页: 1 2 [3]
查看完整版本: 用JS弹出的对话框内的控件,如何设置文本