โครงสร้างการป้อนข้อมูลถูกใช้โดยSendInputการกดแป้นพิมพ์ เมาส์ภาพเคลื่อนไหว สังเคราะห์ และการคลิกที่ปุ่ม.
typedef struct tagINPUT {
DWORD พิมพ์
สหภาพ
{
MOUSEINPUT mi
KEYBDINPUT ki
HARDWAREINPUT สวัสดี
};
} ป้อน, * PINPUT ไกล * LPINPUT
ค่า | ความหมาย |
---|---|
INPUT_MOUSE | เหตุการณ์จะเป็นเหตุการณ์เมาส์ ใช้โครงสร้างmiสหภาพ. |
INPUT_KEYBOARD | เหตุการณ์จะเป็นเหตุการณ์แป้นพิมพ์ ใช้โครงสร้างkiสหภาพ. |
INPUT_HARDWARE | Windows 95: เหตุการณ์จากฮาร์ดแวร์อินพุตอื่นนอกเหนือจากแป้นพิมพ์หรือเมาส์ได้ ใช้โครงสวัสดีสร้างของสหภาพ. |
typedef struct tagMOUSEINPUT {
ยาว dx
ยาว dy
DWORD mouseData
DWORD dwFlags
DWORD เวลา
DWORD dwExtraInfo
} MOUSEINPUT, * PMOUSEINPUT ไกล * LPMOUSEINPUT
ถ้าdwFlagsไม่ประกอบด้วย MOUSEEVENTF_WHEEL แล้วmouseDataควรเป็นศูนย์.
ค่า | ความหมาย |
---|---|
MOUSEEVENTF_ABSOLUTE | ระบุว่า สมาชิกdxและdyมีมาตรฐานแบบเต็มพิกัด หากถูกตั้งค่าสถานะdxและdyสมาชิกประกอบด้วยข้อมูลที่สัมพันธ์กัน: การเปลี่ยนแปลงในตำแหน่งเนื่องจากสุดท้ายรายงานตำแหน่ง ธงนี้สามารถตั้งค่า หรือไม่ได้ตั้ง ค่า คำนึงถึงชนิดของเมาส์หรืออุปกรณ์ชี้ตำแหน่งอื่น ถ้ามี ได้เชื่อมต่อกับระบบ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเมาส์ที่สัมพันธ์กับการเคลื่อนไหว ดูส่วนหมายเหตุดังต่อไปนี้. |
MOUSEEVENTF_MOVE | ระบุว่า การเคลื่อนไหวเกิดขึ้น. |
MOUSEEVENTF_LEFTDOWN | ระบุว่า มีกดปุ่มซ้าย. |
MOUSEEVENTF_LEFTUP | ระบุว่า เป็นปุ่มซ้ายออก. |
MOUSEEVENTF_RIGHTDOWN | ระบุว่า มีกดปุ่มขวา. |
MOUSEEVENTF_RIGHTUP | ระบุว่า ปุ่มขวาที่เผยแพร่. |
MOUSEEVENTF_MIDDLEDOWN | ระบุว่า มีกดปุ่มกลาง. |
MOUSEEVENTF_MIDDLEUP | ระบุว่า ปุ่มกลางเผยแพร่. |
MOUSEEVENTF_WHEEL | Windows NT: ระบุว่า ล้อถูกย้าย ถ้าเมาส์มีล้อ มีระบุจำนวนของความเคลื่อนไหวในmouseData. |
ค่าสถานะบิตที่ระบุสถานะปุ่มของเมาส์ถูกตั้งค่าเพื่อระบุการเปลี่ยนแปลงในสถานะ เงื่อนไขอย่างต่อเนื่องไม่ ตัวอย่างเช่น ถ้าปุ่มซ้ายของเมาส์กด และค้าง MOUSEEVENTF_LEFTDOWN ถูกตั้งค่า เมื่อก่อนมีกดปุ่มซ้าย แต่ไม่ใช่ สำหรับภาพเคลื่อนไหวตามมา ในทำนองเดียวกัน MOUSEEVENTF_LEFTUP ถูกตั้งค่าเฉพาะเมื่อก่อนปล่อยปุ่ม.
typedef struct tagKEYBDINPUT {
WORD wVk
WORD wScan
DWORD dwFlags
DWORD เวลา
DWORD dwExtraInfo
} KEYBDINPUT, * PKEYBDINPUT ไกล * LPKEYBDINPUT
ค่า | ความหมาย |
---|---|
KEYEVENTF_EXTENDEDKEY | ถ้าระบุไว้ รหัสการสแกนถูกนำหน้า ด้วยคำนำหน้าไบต์ที่มีค่า 0xE0 (224). |
KEYEVENTF_KEYUP | ถ้าระบุ คีย์จะถูกเผยแพร่ ถ้าไม่ระบุ ปุ่มถูกกด. |
typedef struct tagHARDWAREINPUT {
DWORD uMsg
WORD wParamL
WORD wParamH
DWORD dwExtraInfo
} HARDWAREINPUT, * PHARDWAREINPUT ไกล * LPHARDWAREINPUT
หากมีย้ายเมาส์ ระบุ โดยกำหนด MOUSEEVENTF_MOVE dxและdyระบุข้อมูลเกี่ยวกับการเคลื่อนไหวที่ ข้อมูลที่ได้ถูกกำหนดเป็นค่าสัมบูรณ์ หรือสัมพันธ์กับจำนวนเต็ม.
ถ้ามีระบุค่า MOUSEEVENTF_ABSOLUTE, dxและdyมีพิกัดแบบสัมบูรณ์มาตรฐานระหว่าง 0 และ 65,535 กระบวนงานเหตุการณ์แมปพิกัดเหล่านี้ไว้บนพื้นผิวแสดง ประสานงานแผนที่ (0,0) ลงบนมุมบนซ้ายของพื้นผิวของจอแสดงผล ประสานงานแผนที่ (65535,65535) ลงบนมุมล่างขวา.
ถ้าไม่ระบุค่า MOUSEEVENTF_ABSOLUTE, dxและdyระบุภาพเคลื่อนไหวที่สัมพันธ์กับเหตุการณ์เมาส์ก่อนหน้า (ที่มีการรายงานตำแหน่งสุดท้าย) บวกค่าหมายถึง ย้ายเมาส์ขวา (หรือลง); ค่าลบหมายถึง ย้ายเมาส์ซ้าย (หรือขึ้น).
เมาส์ที่สัมพันธ์กับการเคลื่อนไหวอยู่ภายใต้ผลของความเร็วของเมาส์และเมาส์สองขีดเริ่มเปลี่ยนค่า ผู้ใช้ตั้งค่าสามค่าเหล่านี้ ด้วยแถบเลื่อนความเร็วของตัวชี้ของแผ่นเมาส์คุณสมบัติของ Control Panel โปรแกรมประยุกต์ที่ได้รับ และตั้งค่าเหล่านี้ด้วยการ SystemParametersInfoฟังก์ชัน .
ระบบปฏิบัติการใช้ทดสอบสองการเคลื่อนไหวที่ระบุสัมพัทธ์เมาส์ ถ้าระยะห่างที่ระบุตามแนวแกน x หรือ y มีค่ามากกว่าค่าขีดเริ่มเปลี่ยนเมาส์แรก และความเร็วของเมาส์ไม่ใช่ศูนย์ ระบบปฏิบัติการ doubles ระยะห่าง ถ้าระยะห่างที่ระบุตามแนวแกน x หรือ y มีค่ามากกว่าค่าขีดเริ่มเปลี่ยนเมาส์สอง และความเร็วของเมาส์จะเท่ากับสอง ระบบปฏิบัติการ doubles ระยะห่างที่เป็นผลมาจากการใช้การทดสอบแรกของเพดาน คือเป็นไปได้สำหรับระบบปฏิบัติการคูณระบุสัมพัทธ์เมาส์เคลื่อนไหวพร้อมกับ x หรือ y แกน โดยครั้งที่สี่.
nbsp Windows &NT:ต้องการเวอร์ชัน 4.0 SP3 หรือรุ่นที่ใหม่กว่า
Windows:ต้องใช้ Windows 98 หรือรุ่นที่ใหม่กว่า
Windows CE:ไม่สนับสนุน
หัวข้อ:ประกาศใน winuser.h.
ภาพรวมการป้อนข้อมูลของแป้นพิมพ์โครงสร้างการป้อนข้อมูลของแป้นพิมพ์ GetMessageExtraInfo, SendInput, SystemParametersInfo