ฟอรั่ม 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


    ต้องการใช้ PixelGetColor แบบ WinActive อ่าครับ

    avatar
    nueng000
    มือใหม่เพิ่งสมัคร
    มือใหม่เพิ่งสมัคร


    ต้องการใช้ PixelGetColor แบบ WinActive อ่าครับ Empty ต้องการใช้ PixelGetColor แบบ WinActive อ่าครับ Empty
    จำนวนข้อความ : 1
    ความนิยม : 0
    เข้าร่วมเมื่อ : 21/04/2014

    ต้องการใช้ PixelGetColor แบบ WinActive อ่าครับ Empty ต้องการใช้ PixelGetColor แบบ WinActive อ่าครับ

    ตั้งหัวข้อ by nueng000 22/04/14, 10:02 pm

    ได้คำตอบจาก [You must be registered and logged in to see this link.] แล้วครับ
    ขอโทษครับที่ไม่หาให้ละเอียดก่อนโพสถาม


    ต้องการใช้ PixelGetColor แบบ WinActive อ่าครับ
    แบบว่าไม่ต้องคลิกที่หน้าต่าง
    อย่าเช่นคำสั่งคลิกก็จะมี
    MouseClick กับ ControlClick อ่าครับ
    อันนี้ตัวอย่างโค้ดครับ
    Code:

    Global $GameHD
    Func LoadH($gtitle)
    $GameHD = WinGetHandle($gtitle)
    If @error Then
    MsgBox(4096, "Error", "ไม่พบหน้าต่างเกม")
    Else
    Return 1
    EndIf
    EndFunc
    If LoadH("BlueStacks App Player for Windows") Then WinActive($GameHD)
    Opt("MouseCoordMode", 2) ;ตั้งค่าเม้าส์ ให้อ้างอิงพิกัดจากหน้าต่างโปรแกรม
    Opt("PixelCoordMode", 2) ;ตั้งค่าการดึงรหัสสี ให้อ้างอิงพิกัดจากหน้าต่างโปรแกรม
    Opt("CaretCoordMode", 2) ;ตั้งค่าการอ้างอิงหน้าต่าง สำหรับคำสั่งอื่นๆ ที่ต้องใช้พิกัดอ้างอิง
    While 1
     If PixelGetColor(251, 176) = 0xFFFFFF Then
     ControlClick ($GameHD, "", "","left",1,251, 176)
     EndIf
     If PixelGetColor(403, 245) = 0x88C227 Then
     ControlClick ($GameHD, "", "","left",1,403, 245)
     EndIf
     If PixelGetColor(333, 241) = 0x8EC729 Then
     ControlClick ($GameHD, "", "","left",1,333, 241)
     EndIf
     Sleep(300)

    WEnd
    ขอบคุณครับ เพิ่งหัดเขียน

      เวลาขณะนี้ 26/04/24, 03:46 pm