คำสั่งคลิกเมาส์

MouseClick

ใน AutoIt, คุณสามารถใช้คำสั่ง MouseClick เพื่อคลิกเมาส์ คุณสามารถใช้คำสั่งนี้ในรูปแบบต่อไปนี้:

MouseClick("button", x, y [, clicks [, speed]])
  • button: ปุ่มที่ต้องการคลิก เช่น "left", "right", "middle" หรือ "primary"
  • x และ y: ตำแหน่งของเมาส์ที่ต้องการคลิก
  • clicks: จำนวนคลิก ค่าเริ่มต้นคือ 1
  • speed: ความเร็วในการคลิก ค่าเริ่มต้นคือ 10 (มิลลิวินาที)
เช่น
; คลิกเมาส์ซ้าย ที่ตำแหน่ง (100, 200)
MouseClick("left", 100, 200)

; คลิกเมาส์ขวา ที่ตำแหน่ง (300, 400)  จำนวน 2ครั้ง ด้วยความเร็ว 5 ms
MouseClick("right", 300, 400, 2, 5)
หมายเหตุ: คุณอาจต้องใช้คำสั่ง MouseMove เพื่อเคลื่อนเมาส์ไปยังตำแหน่งที่ต้องการคลิกก่อนที่จะใช้คำสั่ง MouseClick

คำสั่งคลิกเมาส์แบบไม่แย่งเคอร์เซอร์เมาส์

ControlClick
ใน AutoIt, คุณสามารถใช้คำสั่ง ControlClick เพื่อคลิกที่ปุ่มหรือองค์ประกอบอื่นในหน้าต่างต่าง ๆ คุณสามารถใช้คำสั่งนี้ในรูปแบบต่อไปนี้:
ControlClick(title, text, control [, button [, clicks [, x [, y]]]])
  • title: ชื่อหัวข้อของหน้าต่าง
  • text: ข้อความของหน้าต่าง
  • control: ชื่อของปุ่มหรือองค์ประกอบอื่นในหน้าต่าง
  • button: ปุ่มที่ต้องการคลิก เช่น "left", "right", "primary" หรือ "middle"
  • clicks: จำนวนคลิก ค่าเริ่มต้นคือ 1
  • x และ y: ตำแหน่งของเมาส์ที่ต้องการคลิก (สามารถใส่ค่าเป็น -1 เพื่อให้ AutoIt คำนวณอัตโนมัติ)
เช่น
;คลิกปุ่มok "OK" ในหน้าต่างที่ชื่อ "My Window"
ControlClick("My Window", "", "OK")

;คลิกปุ่มyes "Yes" ในหน้าต่างที่ชื่อ "Confirmation" โดยสั่งให้ใช้เมาส์ขวาคลิก
ControlClick("Confirmation", "", "Yes", "right")

;คลิกปุ่มsave "Save" ในหน้าต่างที่ชื่อ "File Save" จำนวน 3ครั้ง
ControlClick("File Save", "", "Save", "left", 3)
คำสั่ง ControlClick จะคลิกที่ปุ่มหรือองค์ประกอบอื่นในหน้าต่างตามที่ระบุไว้ โดยใช้ปุ่มและจำนวนคลิกที่ต้องการ

คำสั่งเลื่อนเมาส์

MouseMove
ใน AutoIt คำสั่ง mousemove ใช้ในการย้ายเมาส์ไปยังตำแหน่งที่กำหนด คำสั่งนี้จะมีรูปแบบดังนี้:

MouseMove(x, y [, speed])

  • x คือค่า x-coordinate ของตำแหน่งที่ต้องการย้ายเมาส์ไป
  • y คือค่า y-coordinate ของตำแหน่งที่ต้องการย้ายเมาส์ไป
  • speed คือความเร็วในการย้ายเมาส์ (ไม่จำเป็นต้องระบุ ถ้าไม่ระบุจะใช้ค่าเร็วเริ่มต้น)
เช่น:
ในตัวอย่างนี้ คำสั่ง mousemove จะเป็นการย้ายเมาส์ไปยังพิกัด x=100 และ y=200 ในหน้าจอ
MouseMove(100,200)

คำสั่งคลิกแล้วลาก

MouseClickDrag
คำสั่ง MouseClickDrag ใน AutoIt ใช้สำหรับการคลิกและลากเมาส์ไปยังตำแหน่งที่กำหนด คำสั่งนี้ประกอบด้วยอาร์กิวเมนต์ต่างๆ เช่น

MouseClickDrag("left", x1, y1, x2, y2[, speed])
  • "left" หมายถึงปุ่มคลิกซ้ายของเมาส์ ค่าอื่นที่ใช้ได้เช่น "right" หมายถึงปุ่มคลิกขวา
  • x1, y1 คือตำแหน่งเริ่มต้นของการลากเมาส์
  • x2, y2 คือตำแหน่งสิ้นสุดของการลากเมาส์
  • speed คือความเร็วในการลากเมาส์ ค่าปกติคือ 10
ตัวอย่าง:
MouseClickDrag("left", 100, 200, 300, 400) คือการคลิกและลากเมาส์จากตำแหน่ง x=100, y=200 ไปยังตำแหน่ง x=300, y=400 โดยใช้ปุ่มคลิกซ้าย
MouseClickDrag("left", 100, 200, 400, 300)
ในตัวอย่างนี้ คำสั่ง MouseClickDrag จะเลื่อนเม้าส์ไปยังตำแหน่ง x1 = 100, y1 = 200 แล้วคลิกปุ่มซ้าย จากนั้นเลื่อนไปยังตำแหน่ง x2 = 400, y2 = 300 แล้วปล่อยปุ่ม โดยไม่ได้ใส่ค่าเพิ่มเติมใน [<speed>]

คำสั่งกดปุ่มเมาส์

MouseDown
MouseDown("button")
  • "button" คือใช้ใส่ปุ่มประกอบไปด้วย left, right, middle ซ้าย ขวา กลาง
ตัวอย่างการใช้คำสั่ง MouseDown ใน AutoIt:
MouseDown("left")
ในตัวอย่างนี้คำสั่ง MouseDown จะเป็นการคลิกเมาส์ด้วยปุ่มซ้าย (left button) ในแต่ละครั้งที่รันโปรแกรม
คุณสามารถเปลี่ยน "left" เป็น "right" เพื่อคลิกเมาส์ด้วยปุ่มขวา (right button) แทน
MouseDown("right")
และคุณสามารถเปลี่ยน "left" เป็น "middle" เพื่อคลิกเมาส์ด้วยปุ่มกลาง (middle button) แทน
MouseDown("middle")

คำสั่งยกเมาส์

MouseUp

MouseUp เป็นคำสั่งใน AutoIt ที่ใช้เพื่อปล่อยปุ่มเมาส์ที่ถูกกดลง ซึ่งจะเป็นการปล่อยปุ่มเมาส์ที่ถูกกดลงโดยใช้คำสั่ง MouseDown ก่อนหน้า
ตัวอย่าง:
MouseDown("left")

MouseUp("left")
ในตัวอย่างนี้ จะใช้คำสั่ง MouseDown เพื่อกดปุ่มเมาส์ซ้าย และจากนั้นจะทำการปล่อยปุ่มเมาส์ซ้าย โดยใช้คำสั่ง MouseUp

คำสั่งรับค่าพิกัดและสถานะเมาส์

MouseGetPos

MouseGetPos เป็นคำสั่งของ AutoIt ใช้ในการรับค่าตำแหน่งปัจจุบันของเม้าส์ คืนค่าเป็นชุดของค่า x และ y ตำแหน่งปัจจุบันของเม้าส์
ตัวอย่างเช่น:
; รับค่าตำแหน่งเม้าส์ไว้ในตัวแปร $MouseX และ $MouseY
Local $MouseX, $MouseY
MouseGetPos($MouseX, $MouseY)

; แสดงค่าตำแหน่งเม้าส์
MsgBox(0, "ตำแหน่งเม้าส์", "X: " & $MouseX & " Y: " & $MouseY)
MouseGetCursor
MouseGetCursor เป็นคำสั่งใน AutoIt สำหรับใช้เรียกดูสถานะและประเภทของเม้าส์ โดยคืนค่าเป็นตัวเลข
ตัวอย่าง:
; ตรวจสอบสถานะของปุ่มซ้าย
If MouseGetCursor() = "1" Then
    MsgBox(0, "Left button status", "Left button is pressed")
Else
    MsgBox(0, "Left button status", "Left button is not pressed")
EndIf
ค่าที่คืนค่าได้จาก MouseGetCursor คือ:
  • 0: ไม่มีปุ่มถูก กด
  • 1: ปุ่มซ้ายถูก กด
  • 2: ปุ่มขวาถูก กด
  • 4: ปุ่มกลางถูก กด
  • 8: ปุ่ม X1 ถูก กด
  • 16: ปุ่ม X2 ถูก กด
โดยค่าที่คืนค่าอาจได้รวมกันเช่น 3 หมายถึง 1+2 หมายถึงปุ่มซ้ายและปุ่มขวาถูกกดพร้อมกัน

คำสั่งหมุนลูกกลิ้งกลางเมาส์

MouseGetCursor
ตัวอย่างการใช้คำสั่ง MouseWheel ใน AutoIt:
; หมุนลูกกลิ้งเมาส์ขึ้น
MouseWheel("up", 2)

; หมุนลูกกลิ้งเมาส์ลง
MouseWheel("down", 3)
ในตัวอย่างนี้ คำสั่ง MouseWheel จะเป็นการหมุนขึ้น 2 ครั้ง และ หมุนลง 3 ครั้ง