1. Tải bản cài đặt AutoIT mới nhất

    Chào Khách. Nếu bạn mới tham gia và chưa cài đặt AutoIT.
    Vui lòng vào topic trên để tải bản AutoIT mới nhất nhé
    Dismiss Notice
  2. Quy định và nội quy

    Chào Khách. Vui lòng đọc kỹ nội quy và quy định của diễn đàn
    Để tránh bị ban một cách đáng tiếc nhé!
    Dismiss Notice
  3. Hướng dẫn chèn mã AutoIT trong diễn đàn

    Chào Khách. Vui lòng xem qua bài viết này
    Để biết cách chèn mã AutoIT trong diễn đàn bạn nhé :)
    Dismiss Notice

Hỏi đáp Vấn đề khi sử dụng ControlClick(). Không thực hiện câu lệnh tiếp theo.

Thảo luận trong 'Thảo luận chung - Hỏi đáp' bắt đầu bởi hoangquandlk, 1/5/18.

  1. hoangquandlk

    hoangquandlk Thành viên mới
    • 1/6

    Tham gia ngày:
    1/5/18
    Bài viết:
    2
    Đã được thích:
    0
    Chào anh em,
    Mình tay mơ mới tiếp cận Autoit thôi. Vấn đề của mình là khi sử dụng hàm ControlClick() thì những câu lệnh tiếp theo của sau đó không được thực hiện.
    Mình thược hiện nó trong một GUI IE như sau:
    Mã (AutoIt):
    #include <GUIConstantsEx.au3>
    #include <IE.au3>
    #include <WindowsConstants.au3>
    #include "IE_EmbeddedVersioning.au3"

    _IE_EmbeddedSetBrowserEmulation(-1, True, True)
    Local $oIE = _IECreateEmbedded()
    GUICreate("Embedded Web control Test", 640, 580, _
            (@DesktopWidth) / 2, (@DesktopHeight) / 2, _
            $WS_OVERLAPPEDWINDOW + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
    GUICtrlCreateObj($oIE, 10, 40, 600, 360)
    Local $idButton_Back = GUICtrlCreateButton("Back", 10, 420, 100, 30)
    Local $idButton_Forward = GUICtrlCreateButton("Forward", 120, 420, 100, 30)
    Local $idButton_Home = GUICtrlCreateButton("Home", 230, 420, 100, 30)
    Local $idButton_Stop = GUICtrlCreateButton("Stop", 340, 420, 100, 30)

    Global $g_idError_Message = GUICtrlCreateLabel("", 100, 500, 500, 30)
    GUICtrlSetColor(-1, 0xff0000)

    GUISetState(@SW_SHOW) ;Show GUI

    _IENavigate($oIE, "http://www.autoitscript.com")
    _IEAction($oIE, "stop")



    ; Waiting for user to close the window
    While 1
        Local $iMsg = GUIGetMsg()
        Select
            Case $iMsg = $GUI_EVENT_CLOSE
                ExitLoop
            Case $iMsg = $idButton_Home
                _IENavigate($oIE, "google.com")
                _IELoadWait($oIE)
               
               
                ; Right click the first time X:150
                ControlClick("Embedded Web control Test","","[CLASS:Internet Explorer_Server; INSTANCE:1]","right",1,150,250)
                Sleep(2000)
                ;Right click the second time X:250
                ControlClick("Embedded Web control Test","","[CLASS:Internet Explorer_Server; INSTANCE:1]","right",1,250,250)
                Sleep(2000)
                ;Right click the third time X:350
                ControlClick("Embedded Web control Test","","[CLASS:Internet Explorer_Server; INSTANCE:1]","right",1,350,250)
                CheckError("Home", @error, @extended)
               
               
               
            Case $iMsg = $idButton_Back
                _IEAction($oIE, "back")
                CheckError("Back", @error, @extended)
            Case $iMsg = $idButton_Forward
                _IEAction($oIE, "forward")
                CheckError("Forward", @error, @extended)
            Case $iMsg = $idButton_Stop
                _IEAction($oIE, "stop")
                CheckError("Stop", @error, @extended)
        EndSelect
    WEnd

    GUIDelete()

    Exit

    Func CheckError($sMsg, $iError, $iExtended)
        If $iError Then
            $sMsg = "Error using " & $sMsg & " button (" & $iExtended & ")"
        Else
            $sMsg = ""
        EndIf
        GUICtrlSetData($g_idError_Message, $sMsg)
    EndFunc   ;==>CheckError
    Đúng ra khi thực hiện xong "; Right click the first time X:150" thì nó phải thực hiện tiếp ";Right click the second time X:250" và ";Right click the third time X:350". Nhưng nó lại dùng lại ở ControlClick đâu tiên chứ ko như vậy. Bạn nào có kinh nghiệm giải thích cho mình với.
    Cảm ơn các bạn nhiều.!
     

Chia sẻ trang này

Đang tải...