【问题标题】:AutoIt - ControlClick on Flash contentAutoIt - 控制点击 Flash 内容
【发布时间】:2014-05-16 19:16:13
【问题描述】:

好的,我正在尝试在我的工作票务系统上自动关闭多张票,该系统基于浏览器并基于 Flash 构建(这很糟糕)。使用 AutoIt v3 Window Info,我能够获得大部分信息,但点击没有注册。我知道要使 ControlClick 工作,该窗口必须处于活动状态,但没有任何进展。

代码:

While 1
$msg = GUIGetMsg()
Select
    Case $msg = $GUI_EVENT_CLOSE
        ExitLoop
    Case $msg = $AutoClose
        $NumTickets = GUICtrlRead($NumTicketsBox)
        $iState = 1
        $i = 0
    Case Else
        If $iState = 1 Then
            If $i >= $NumTickets Then
                $iState = 3
                ContinueLoop
            EndIf
            ControlClick("[CLASS:MacromediaFlashPlayerActiveX]", "", "", "left", 1, 143, 474)
            $iState = 2
            $iTimer = TimerInit()
        ElseIf $iState = 2 Then
            If TimerDiff($iTimer) < 2000 Then ContinueLoop
            ControlClick("[CLASS:MacromediaFlashPlayerActiveX]", "", "", "left", 1, 700, 337)
            $iTimer = TimerInit()
            $i = $i + 1
            $iState = 1
        ElseIf $iState = 3 Then
            If TimerDiff($iTimer) < 1000 Then ContinueLoop
            If $i <= 0 Then
                $iState = 1
                ContinueLoop
            EndIf
            ControlClick("[CLASS:MacromediaFlashPlayerActiveX]", "", "", "left", 1, 59, 337)
            $iTimer = TimerInit()
            $i = $i - 1
        EndIf
EndSelect
WEnd

这是 >>>> Control

>>>> Control <<<<
Class:  MacromediaFlashPlayerActiveX
Instance:   1
ClassnameNN:    MacromediaFlashPlayerActiveX1
Name:   
Advanced (Class):   [CLASS:MacromediaFlashPlayerActiveX; INSTANCE:1]
ID: 172092576
Text:   
Position:   8, 194
Size:   760, 620
ControlClick Coords:    59, 339
Style:  0x56000000
ExStyle:    0x00000000
Handle: 0x0002117A

任何帮助将不胜感激。

----编辑----

我能想到的最接近类似解决方案的方法位于此处:http://www.autoitscript.com/forum/topic/94736-noob-controlclick/,但这似乎对我不起作用。再一次,任何帮助都将不胜感激。

【问题讨论】:

    标签: flash automation autoit


    【解决方案1】:

    试试这个

    ControlClick("[CLASS:MacromediaFlashPlayerActiveX]", "", 172092576, "left", 1, 700, 337)
    

    【讨论】:

    • 嘿,很抱歉这么久没有任何关注,我不再关注它了。明天我可以到达我的开发机器时尝试一下。谢谢!
    【解决方案2】:
    Opt("WinTitleMatchMode", 2) ; 2=subStr
    $sTitle = "Mozilla"
    ControlClick($sTitle, "", "[CLASSNN:MacromediaFlashPlayerActiveX1]", "primary", 1, 700, 337)            
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-19
      • 2012-05-09
      • 1970-01-01
      • 2019-07-23
      • 2013-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多