ฟอรั่ม PSsix

Would you like to react to this message? Create an account in a few clicks or log in to continue.

ฟอรั่มของบล็อก http://pssix.blogspot.com


3 posters

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    avatar
    sadd15
    สมาชิกทั่วไป
    สมาชิกทั่วไป


    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty
    จำนวนข้อความ : 17
    ความนิยม : 0
    เข้าร่วมเมื่อ : 02/11/2011
    อายุ : 37

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by sadd15 07/02/14, 10:25 am

    พอดีผมพึ่งศึกษา Autoit ในบอร์ดนี้ มาได้อาทิตย์นึงละครับ
    จึงอยากไห้ช่วยเหลือโค๊ดนี้หน่อยครับจนปัญญาจริงๆ ไปค้นหาจาก F1 แล้วก็ยังไม่ค่อยรู้เรื่องเท่าไหร่ครับ

    1.ผมกด "เริ่มทำงาน" แล้วโค๊ดมันไม่ทำงานต่อเนื่องครับ ต้องคอยมากดเองโค๊ดถึงจะทำงานครับ
    2.จากข้อ 1 หากผมใช้ คำสั่ง While 1 ที่โค๊ด เพื่อให้มันทำงานต่อเนื่อง แล้วหากผมกด เริ่มทำงาน ผมจะใช้คำสั่งอื่นไม่ได้เลยครับ เช่น "ซ่อนหน้าจอ" , "กลับสู่หน้าจอ", "หยุดการทำงาน" ดังโค๊ดที่ผมได้ทำการแปะไว้ไห้น่ะครับ หากเขียนไห้อ่านเข้าใจยาก ขอโทษด้วยน่ะครับ


    Code:
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <MsgBoxConstants.au3>
    #include <GUIButton.au3>
    #include<Misc.au3>

    _Singleton(@ScriptName, 0)

    ProgressOn("โปรแกรมกำลังเริ่มทำงาน", "กรุณารอสักครู่.....", "0 percent")
    For $i = 10 to 100 step 5
        sleep(80)
        ProgressSet( $i, $i & " percent")
    Next
    ProgressSet(100 , "", "เสร็จสิ้น")
    sleep(500)
    ProgressOff()

    Opt("MouseCoordMode", 2)
    Opt("PixelCoordMode", 2)
    Opt("CaretCoordMode", 2)

    Global $GameHD
    Global $Paused

    Func _PSsixLoadH($gtitle)
    $GameHD = WinGetHandle($gtitle)
    If @error Then
    MsgBox(4096, "Error", "ไม่พบหน้าต่างเกมส์ Fifa online3")
    Else
    Return 1
    EndIf
    EndFunc
    If _PSsixLoadH("FIFA") Then WinActivate($GameHD)

    $Form1 = GUICreate("โปรแกรม FIFA Online3", 390, 186, 200, 189)
    GUISetIcon("E:\Firefox\Th3-Prophetman-Unreal-Tournament-3-Unreal-Tournament-III.ico", -1)
    GUISetBkColor(0xB4B4B4)
    $Group1 = GUICtrlCreateGroup("เลือกโหมดแข่งขัน", 0, 0, 241, 153)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Button1 = GUICtrlCreateButton("เริ่มโหมด League", 40, 48, 193, 25, $BS_CENTER)
    $Button2 = GUICtrlCreateButton("เริ่มโหมด Manager", 40, 112, 193, 25)
    $Group2 = GUICtrlCreateGroup("ออปชั่นเสริม", 248, 32, 137, 121)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Button3 = GUICtrlCreateButton("ซ่อนหน้าจอ Hide", 256, 56, 121, 25)
    $Button4 = GUICtrlCreateButton("กลับหน้าจอปกติ Show", 256, 88, 121, 25)
    $Button5 = GUICtrlCreateButton("หยุดการทำงาน Stop", 256, 120, 121, 25)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Radio1 = GUICtrlCreateRadio("โหมดจำลองลีค/ต่อสัญญาเอง", 16, 24, 169, 17)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Radio2 = GUICtrlCreateRadio("โหมด Manager / ต่อสัญา / ตัด Re play", 16, 88, 209, 17)
    $Input1 = GUICtrlCreateInput("หากต้องการออกจากโปรแกรมกรุณากดปุ่ม End..", 0, 160, 385, 21)
    #EndRegion ### END Koda GUI section ###

    GUISetState(@SW_SHOW)
    Global $onoff = 0
    $doit = False

    While 1
     $nMsg = GUIGetMsg()
     Switch $nMsg
     Case $GUI_EVENT_CLOSE
     Exit
     Case $Button1
     $itr = 1
     League()
     Case $Button3
     $itr = 1
     Hide()
     Case $Button4
     $itr = 0
    Show()
    Case $Button5
     $itr = 0
    Stop()
     EndSwitch
    WEnd

    Func League() ; คำสั่ง {เปิดการใช้งานโหมด League}
    ControlClick ($GameHD, "", "","left",1,114,574)
    Sleep (10)
    ControlClick ($GameHD, "", "","left",1,124,535)
    Sleep (10)
    ControlClick ($GameHD, "", "","left",1,398,482)
    Sleep (15)
    ControlClick ($GameHD, "", "","left",1,371,539)
    Sleep (10)
    ControlClick ($GameHD, "", "","left",1,367,481)
    Sleep (10)
    ControlClick ($GameHD, "", "","left",1,369,347)
    Sleep (10)
    ControlClick ($GameHD, "", "","left",1,731,575)
    Sleep (40)
    EndFunc

    Func hide() ; คำสั่ง {ซ่อนหน้าจอ}
           ToolTip("Hide",0,0)
            WinSetState($gameHD, "", @SW_HIDE)
        sleep(500)
        ToolTip("",0,0)
     EndFunc

    Func show() ; คำสั่ง {กลับหน้าจอปกติ}
        ToolTip("Show",0,0)
            WinSetState($gameHD, "", @SW_SHOW)
        sleep(500)
        ToolTip("",0,0)
    EndFunc

    Func Stop()
     $nMsg = GUIGetMsg()
     Switch $nMsg
     Case $GUI_EVENT_CLOSE
     Exit
     Case $Button5
     $itr = 0
     EndSwitch
       EndFunc

    Func end() ; คำสั่ง {ออกจากโปรแกรม}
     If MsgBox(0, 'Fifa3 โหมด League + Manager', 'ออกจากโปรแกรมเรียบร้อย') = 2 Then Exit
        Exit
    EndFunc
    Arm
    Arm
    PSsix Member Super Class III
    PSsix Member Super Class III


    PSsix Master PSsix Program Coder
    จำนวนข้อความ : 268
    ความนิยม : 54
    เข้าร่วมเมื่อ : 31/03/2011
    อายุ : 27

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty Re: รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by Arm 07/02/14, 08:47 pm

    ประมาณนี้ครับ
    โค้ดที่เพิ่มเข้ามาจะทำตัวหนาไว้พร้อมอธิบาย
    ปล.ขอใช้แท็ก Quote แทนเพราะแท็ก Code มันทำตัวหนาไม่ได้ :P
    Modified by Arm พิมพ์ว่า:#include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <MsgBoxConstants.au3>
    #include <GUIButton.au3>
    #include <Misc.au3>

    OnAutoItExitRegister("end")
    HotKeySet("{F5}", "Hide") ;สั่งให้กด F5 แล้วทำการโชวฺ์ / ซ่อนหน้าต่างโดยไม่ต้องคลิกปุ่ม
    _Singleton(@ScriptName, 0)

    ProgressOn("โปรแกรมกำลังเริ่มทำงาน", "กรุณารอสักครู่.....", "0 percent")
    For $i = 10 to 100 step 5
       sleep(80)
       ProgressSet( $i, $i & " percent")
    Next
    ProgressSet(100 , "", "เสร็จสิ้น")
    sleep(500)
    ProgressOff()

    Opt("MouseCoordMode", 2)
    Opt("PixelCoordMode", 2)
    Opt("CaretCoordMode", 2)

    Global $GameHD = "FIFA" ;กำหนดค่าหน้าต่างที่ตัวแปรนี้ครับ
    Global $Paused
    Global $a = 0, $b = 0, $c = 0 ;ตรงนี้เป็นการกำหนดตัวแปรเพื่อเช็คว่ากดปุ่มไปหรือยัง

    If _PSsixLoadH($GameHD) Then
    WinActivate($GameHD)
    HotKeySet("{END}", "end") ;เมื่อกดปุ่ม END ให้ออกจากโปรแกรม
    EndIf

    $Form1 = GUICreate("โปรแกรม FIFA Online3", 390, 186, -1, -1)
    GUISetIcon("E:\Firefox\Th3-Prophetman-Unreal-Tournament-3-Unreal-Tournament-III.ico", -1)
    GUISetBkColor(0xB4B4B4)
    $Group1 = GUICtrlCreateGroup("เลือกโหมดแข่งขัน", 0, 0, 241, 153)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Button1 = GUICtrlCreateButton("เริ่มโหมด League", 40, 48, 193, 25, $BS_CENTER)
    $Button2 = GUICtrlCreateButton("เริ่มโหมด Manager", 40, 112, 193, 25)
    $Group2 = GUICtrlCreateGroup("ออปชั่นเสริม", 248, 32, 137, 121)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Button3 = GUICtrlCreateButton("ซ่อนหน้าจอ Hide", 256, 56, 121, 25)
    ;~ $Button4 = GUICtrlCreateButton("กลับหน้าจอปกติ Show", 256, 88, 121, 25) ;ขออนุญาตทำ comment บรรทัดนี้ไว้เพราะไม่จำเป็นต้องใช้สองปุ่มก็ได้
    $Button5 = GUICtrlCreateButton("หยุดการทำงาน Stop", 256, 120, 121, 25)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Radio1 = GUICtrlCreateRadio("โหมดจำลองลีค/ต่อสัญญาเอง", 16, 24, 169, 17)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Radio2 = GUICtrlCreateRadio("โหมด Manager / ต่อสัญา / ตัด Re play", 16, 88, 209, 17)
    $Input1 = GUICtrlCreateInput("หากต้องการออกจากโปรแกรมกรุณากดปุ่ม End..", 0, 160, 385, 21)
    #EndRegion ### END Koda GUI section ###

    GUISetState(@SW_SHOW)
    Global $onoff = 0
    $doit = False

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    If $a = 0 Then ;ตรงนี้เป็นการเช็คว่ากดคลิกปุ่มไปหรือยัง ถ้ายังจะทำงานตามคำสั่งและกำหนดค่าตัวแปรเป็น 1 เพื่อให้โปรแกรมรู้ว่าเราคลิกไปแล้ว
    $itr = 1
    AdlibRegister("League", 500)
    $a = 1
    Else
    AdlibUnRegister("League")
    $a = 0
    EndIf
    Case $Button3
    $itr = 1
    Hide()
    Case $Button5
    $itr = 0
    Stop()
    EndSwitch
    WEnd

    Func League() ; คำสั่ง {เปิดการใช้งานโหมด League}
    ControlClick($GameHD, "", "", "left", 1, 114, 574)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 124, 535)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 398, 482)
    Sleep(15)
    ControlClick($GameHD, "", "", "left", 1, 371, 539)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 367, 481)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 369, 347)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 731, 575)
    Sleep(40)
    EndFunc   ;==>League

    Func Hide() ; คำสั่ง {กลับหน้าจอปกติ}
    If $c = 0 Then
    $itr = 1
    ToolTip("Show", 0, 0)
    WinSetState($GameHD, "", @SW_HIDE)
    GUICtrlSetData($Button3, "กลับหน้าจอปกติ Show")
    $c = 1
    Sleep(500)
    ToolTip("", 0, 0)
    Else
    $itr = 0
    ToolTip("Show", 0, 0)
    GUICtrlSetData($Button3, "ซ่อนหน้าจอ Hide")
    WinSetState($GameHD, "", @SW_SHOW)
    $c = 0
    Sleep(500)
    ToolTip("", 0, 0)
    EndIf
    EndFunc   ;==>Hide

    Func Stop()
    $itr = 0
    EndFunc   ;==>Stop

    Func end() ; คำสั่ง {ออกจากโปรแกรม}
    If MsgBox(0, 'Fifa3 โหมด League + Manager', 'ออกจากโปรแกรมเรียบร้อย') = 1 Then Exit
    EndFunc   ;==>end

    Func _PSsixLoadH($gtitle)
    $GameHD = WinGetHandle($gtitle)
    If @error Then
    MsgBox(4096, "Error", "ไม่พบหน้าต่างเกมส์ Fifa online3")
    Exit ;สั่งให้ออกจากโปรแกรมเมื่อไม่พบหน้าต่างตามค่าตัวแปร $GameHD
    Else
    Return 1
    EndIf
    EndFunc   ;==>_PSsixLoadH

    ถ้าได้หรือไม่ได้ยังไงก็ตอบกลับมาด้วยนะครับ em218
    tomakung
    tomakung
    PSsix Member Class II
    PSsix Member Class II


    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty
    จำนวนข้อความ : 38
    ความนิยม : 11
    เข้าร่วมเมื่อ : 24/02/2012

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty Re: รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by tomakung 07/02/14, 09:22 pm

    ได้ความรู้อีกแล้ว  em218 
    avatar
    sadd15
    สมาชิกทั่วไป
    สมาชิกทั่วไป


    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty
    จำนวนข้อความ : 17
    ความนิยม : 0
    เข้าร่วมเมื่อ : 02/11/2011
    อายุ : 37

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty Re: รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by sadd15 08/02/14, 10:20 am

    Arm พิมพ์ว่า:ประมาณนี้ครับ
    โค้ดที่เพิ่มเข้ามาจะทำตัวหนาไว้พร้อมอธิบาย
    ปล.ขอใช้แท็ก Quote แทนเพราะแท็ก Code มันทำตัวหนาไม่ได้ :P
    Modified by Arm พิมพ์ว่า:#include
    #include
    #include
    #include
    #include
    #include
    #include

    OnAutoItExitRegister("end")
    HotKeySet("{F5}", "Hide") ;สั่งให้กด F5 แล้วทำการโชวฺ์ / ซ่อนหน้าต่างโดยไม่ต้องคลิกปุ่ม
    _Singleton(@ScriptName, 0)

    ProgressOn("โปรแกรมกำลังเริ่มทำงาน", "กรุณารอสักครู่.....", "0 percent")
    For $i = 10 to 100 step 5
       sleep(80)
       ProgressSet( $i, $i & " percent")
    Next
    ProgressSet(100 , "", "เสร็จสิ้น")
    sleep(500)
    ProgressOff()

    Opt("MouseCoordMode", 2)
    Opt("PixelCoordMode", 2)
    Opt("CaretCoordMode", 2)

    Global $GameHD = "FIFA" ;กำหนดค่าหน้าต่างที่ตัวแปรนี้ครับ
    Global $Paused
    Global $a = 0, $b = 0, $c = 0 ;ตรงนี้เป็นการกำหนดตัวแปรเพื่อเช็คว่ากดปุ่มไปหรือยัง

    If _PSsixLoadH($GameHD) Then
    WinActivate($GameHD)
    HotKeySet("{END}", "end") ;เมื่อกดปุ่ม END ให้ออกจากโปรแกรม
    EndIf

    $Form1 = GUICreate("โปรแกรม FIFA Online3", 390, 186, -1, -1)
    GUISetIcon("E:\Firefox\Th3-Prophetman-Unreal-Tournament-3-Unreal-Tournament-III.ico", -1)
    GUISetBkColor(0xB4B4B4)
    $Group1 = GUICtrlCreateGroup("เลือกโหมดแข่งขัน", 0, 0, 241, 153)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Button1 = GUICtrlCreateButton("เริ่มโหมด League", 40, 48, 193, 25, $BS_CENTER)
    $Button2 = GUICtrlCreateButton("เริ่มโหมด Manager", 40, 112, 193, 25)
    $Group2 = GUICtrlCreateGroup("ออปชั่นเสริม", 248, 32, 137, 121)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Button3 = GUICtrlCreateButton("ซ่อนหน้าจอ Hide", 256, 56, 121, 25)
    ;~ $Button4 = GUICtrlCreateButton("กลับหน้าจอปกติ Show", 256, 88, 121, 25) ;ขออนุญาตทำ comment บรรทัดนี้ไว้เพราะไม่จำเป็นต้องใช้สองปุ่มก็ได้
    $Button5 = GUICtrlCreateButton("หยุดการทำงาน Stop", 256, 120, 121, 25)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Radio1 = GUICtrlCreateRadio("โหมดจำลองลีค/ต่อสัญญาเอง", 16, 24, 169, 17)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Radio2 = GUICtrlCreateRadio("โหมด Manager / ต่อสัญา / ตัด Re play", 16, 88, 209, 17)
    $Input1 = GUICtrlCreateInput("หากต้องการออกจากโปรแกรมกรุณากดปุ่ม End..", 0, 160, 385, 21)
    #EndRegion ### END Koda GUI section ###

    GUISetState(@SW_SHOW)
    Global $onoff = 0
    $doit = False

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    If $a = 0 Then ;ตรงนี้เป็นการเช็คว่ากดคลิกปุ่มไปหรือยัง ถ้ายังจะทำงานตามคำสั่งและกำหนดค่าตัวแปรเป็น 1 เพื่อให้โปรแกรมรู้ว่าเราคลิกไปแล้ว
    $itr = 1
    AdlibRegister("League", 500)
    $a = 1
    Else
    AdlibUnRegister("League")
    $a = 0
    EndIf
    Case $Button3
    $itr = 1
    Hide()
    Case $Button5
    $itr = 0
    Stop()
    EndSwitch
    WEnd

    Func League() ; คำสั่ง {เปิดการใช้งานโหมด League}
    ControlClick($GameHD, "", "", "left", 1, 114, 574)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 124, 535)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 398, 482)
    Sleep(15)
    ControlClick($GameHD, "", "", "left", 1, 371, 539)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 367, 481)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 369, 347)
    Sleep(10)
    ControlClick($GameHD, "", "", "left", 1, 731, 575)
    Sleep(40)
    EndFunc   ;==>League

    Func Hide() ; คำสั่ง {กลับหน้าจอปกติ}
    If $c = 0 Then
    $itr = 1
    ToolTip("Show", 0, 0)
    WinSetState($GameHD, "", @SW_HIDE)
    GUICtrlSetData($Button3, "กลับหน้าจอปกติ Show")
    $c = 1
    Sleep(500)
    ToolTip("", 0, 0)
    Else
    $itr = 0
    ToolTip("Show", 0, 0)
    GUICtrlSetData($Button3, "ซ่อนหน้าจอ Hide")
    WinSetState($GameHD, "", @SW_SHOW)
    $c = 0
    Sleep(500)
    ToolTip("", 0, 0)
    EndIf
    EndFunc   ;==>Hide

    Func Stop()
    $itr = 0
    EndFunc   ;==>Stop

    Func end() ; คำสั่ง {ออกจากโปรแกรม}
    If MsgBox(0, 'Fifa3 โหมด League + Manager', 'ออกจากโปรแกรมเรียบร้อย') = 1 Then Exit
    EndFunc   ;==>end

    Func _PSsixLoadH($gtitle)
    $GameHD = WinGetHandle($gtitle)
    If @error Then
    MsgBox(4096, "Error", "ไม่พบหน้าต่างเกมส์ Fifa online3")
    Exit ;สั่งให้ออกจากโปรแกรมเมื่อไม่พบหน้าต่างตามค่าตัวแปร $GameHD
    Else
    Return 1
    EndIf
    EndFunc   ;==>_PSsixLoadH

    ถ้าได้หรือไม่ได้ยังไงก็ตอบกลับมาด้วยนะครับ em218

    ขอบคุณท่าน Arm อย่างสูงเลยครับใช้งานได้แล้วครับ
    ผมขอถามอย่างสักอย่างได้มั้ยครับ

    1.เกี่ยวกับช่อง Radio1 และช่อง Radio2 ถ้าหากยังไม่มีการติ๊กจะไม่สามารถใช้งาน ปุ่ม Button ได้เช่น
    1.1 ช่อง Radio1 = Button1 {หากยังไม่ได้ คลิ๊กช่อง Radio1 จะไม่สามารถใช้งานปุ่ม Button1 ได้}
    1.2 ช่อง Radio2 = Button2 {หากคลิ๊กช่อง Radio1 แต่ไปกด ปุ่ม Button2 จะแจ้งว่าเลือกรายการไม่ถูกต้อง หรือ การทำงานไม่สอดคล้องกัน}

    2.ประมาณนี้ครับ
    Arm
    Arm
    PSsix Member Super Class III
    PSsix Member Super Class III


    PSsix Master PSsix Program Coder
    จำนวนข้อความ : 268
    ความนิยม : 54
    เข้าร่วมเมื่อ : 31/03/2011
    อายุ : 27

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty Re: รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by Arm 08/02/14, 05:10 pm

    เอาคำสั่งส่วนนี้ไปวางใต้ตัวแปร $Button1 และ $Button2 ในส่วนของ GUI
    Code:
    GUICtrlSetState(-1, $GUI_DISABLE)
    แก้ Case ปุ่ม 1 และ 2 ตามนี้ครับ
    Code:
    ;; Button 1
    If GUICtrlRead($Radio1) <> $GUI_CHECKED Then
       MsgBox(0, "Error!", "เลือกรายการไม่ถูกต้อง กรุณาเลือกใหม่ครับ", -1, $Form1)
    Else
       ;;;; code ;;;;
    EndIf

    ;; Button 2
    If GUICtrlRead($Radio2) <> $GUI_CHECKED Then
       MsgBox(0, "Error!", "เลือกรายการไม่ถูกต้อง กรุณาเลือกใหม่ครับ", -1, $Form1)
    Else
       ;;;; code ;;;;
    EndIf
    เพิ่ม Case นี้เข้าไปในลูป While ครับ
    Code:
    Case $Radio1
       GUICtrlSetState($Button1, $GUI_ENABLE)
    Case $Radio2
       GUICtrlSetState($Button2, $GUI_ENABLE)
     em218 em230 
    avatar
    sadd15
    สมาชิกทั่วไป
    สมาชิกทั่วไป


    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty
    จำนวนข้อความ : 17
    ความนิยม : 0
    เข้าร่วมเมื่อ : 02/11/2011
    อายุ : 37

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty Re: รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by sadd15 08/02/14, 09:27 pm

    Arm พิมพ์ว่า:เอาคำสั่งส่วนนี้ไปวางใต้ตัวแปร $Button1 และ $Button2 ในส่วนของ GUI
    Code:
    GUICtrlSetState(-1, $GUI_DISABLE)
    แก้ Case ปุ่ม 1 และ 2 ตามนี้ครับ
    Code:
    ;; Button 1
    If GUICtrlRead($Radio1) <> $GUI_CHECKED Then
     MsgBox(0, "Error!", "เลือกรายการไม่ถูกต้อง กรุณาเลือกใหม่ครับ", -1, $Form1)
    Else
     ;;;; code ;;;;
    EndIf

    ;; Button 2
    If GUICtrlRead($Radio2) <> $GUI_CHECKED Then
     MsgBox(0, "Error!", "เลือกรายการไม่ถูกต้อง กรุณาเลือกใหม่ครับ", -1, $Form1)
    Else
     ;;;; code ;;;;
    EndIf
    เพิ่ม Case นี้เข้าไปในลูป While ครับ
    Code:
    Case $Radio1
     GUICtrlSetState($Button1, $GUI_ENABLE)
    Case $Radio2
     GUICtrlSetState($Button2, $GUI_ENABLE)
     em218 em230 

    คือโค๊ดมีการแจ้งเตือนถูกทุกอย่างครับ แต่พอแจ้งเตือนแล้ว คำลั่งมันยังคงทำงานตามปกติครับ
    เช่น Radio1 = Button1
    Radio2 = Button2
    เมื่อคลิ๊กเมาส์ที่ช่อง Radio1 โดยปกติแล้วหากคลิ๊กช่อง Radio1 ปุ่ม Button1 จะพร้อมทำงานและจะไม่สามารถใช้งานปุ่ม Button2 ได้ หากมีการ คลิ๊กปุ่ม Button2 จะมีโค๊ดเด้งแจ้งเตือนครับ

    ปัญหาคือ เมื่อ คลิ๊กช่อง Radio1 แต่หากไปกดที่ช่อง Button2 โค๊ดมีการแจ้งเตือน "เลือกรายการไม่ถูกต้อง กรุณาเลือกใหม่ครับ" แต่ว่า ปุ่ม Button2 ยกคงทำงานปกติครับ

    ช่วยหน่อยน่ะครับ
    Arm
    Arm
    PSsix Member Super Class III
    PSsix Member Super Class III


    PSsix Master PSsix Program Coder
    จำนวนข้อความ : 268
    ความนิยม : 54
    เข้าร่วมเมื่อ : 31/03/2011
    อายุ : 27

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty Re: รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by Arm 08/02/14, 10:27 pm

    Example
    Code:
    Case $Button1
       If GUICtrlRead($Radio1) <> $GUI_CHECKED Then
          MsgBox(0, "Error!", "เลือกรายการไม่ถูกต้อง กรุณาเลือกใหม่ครับ", -1, $Form1)
       Else
          If $a = 0 Then
             $itr = 1
             AdlibRegister("League", 500)
             $a = 1
          Else
             AdlibUnRegister("League")
             $a = 0
          EndIf
       EndIf

    ง่ายๆก็คือให้ก็อปปี้โค้ดเดิมที่อยู่ใน Case ปุ่ม 2 ออกมาก่อนแล้ว วางโค้ดดังกล่าวลงไปแล้วค่อยนำโค้ดเดิมไปวางหลัง Else ครับ
    avatar
    sadd15
    สมาชิกทั่วไป
    สมาชิกทั่วไป


    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty
    จำนวนข้อความ : 17
    ความนิยม : 0
    เข้าร่วมเมื่อ : 02/11/2011
    อายุ : 37

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty Re: รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by sadd15 09/02/14, 12:00 am

    Arm พิมพ์ว่า:Example
    Code:
    Case $Button1
     If GUICtrlRead($Radio1) <> $GUI_CHECKED Then
     MsgBox(0, "Error!", "เลือกรายการไม่ถูกต้อง กรุณาเลือกใหม่ครับ", -1, $Form1)
     Else
     If $a = 0 Then
     $itr = 1
     AdlibRegister("League", 500)
     $a = 1
     Else
     AdlibUnRegister("League")
     $a = 0
     EndIf
     EndIf

    ง่ายๆก็คือให้ก็อปปี้โค้ดเดิมที่อยู่ใน Case ปุ่ม 2 ออกมาก่อนแล้ว วางโค้ดดังกล่าวลงไปแล้วค่อยนำโค้ดเดิมไปวางหลัง Else ครับ

    ต้องขอบคุณท่าน Arm อย่างสูงยิ่งน่ะครับ ที่ช่วยเหลือตลอดเลย  em228 em228 em228 em228
    avatar
    sadd15
    สมาชิกทั่วไป
    สมาชิกทั่วไป


    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty
    จำนวนข้อความ : 17
    ความนิยม : 0
    เข้าร่วมเมื่อ : 02/11/2011
    อายุ : 37

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty Re: รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by sadd15 09/02/14, 04:20 pm

    บอร์ดนี้ไม่มี ส่งข้อความ PM หรือครับ

    คืออยากส่งโค๊ดไห้คุณ Arm ช่วยดูไห้อีกหน่อยอะครับ (ไม่กล้าเอาโค๊ดมาลงเต็ม) พอจะมีทางติดต่ออื่นได้มั้ยครับ
    Arm
    Arm
    PSsix Member Super Class III
    PSsix Member Super Class III


    PSsix Master PSsix Program Coder
    จำนวนข้อความ : 268
    ความนิยม : 54
    เข้าร่วมเมื่อ : 31/03/2011
    อายุ : 27

    รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ Empty Re: รบกวนท่านเทพๆ ทั้งหลายช่วยเหลือโค๊ดนี้ไห้หน่อยครับ

    ตั้งหัวข้อ by Arm 09/02/14, 06:34 pm

    PM ได้ครับ ผม PM ไปหาแล้วนะครับ

      เวลาขณะนี้ 08/05/24, 01:09 am