GetAsyncKeyState

ฟังก์ชันGetAsyncKeyStateกำหนดว่าคีย์ไม่ขึ้น หรือลงในขณะเรียกว่าฟังก์ชัน และว่าในการกดคีย์การแก้ไขหลังจากเรียกก่อนหน้าไปGetAsyncKeyState.

(GetAsyncKeyStateสั้น int  vKey / / เสมือนคีย์รหัส);
 

พารามิเตอร์

vKey
ระบุรหัสคีย์เสมือนได้ 256 หนึ่ง สำหรับข้อมูลเพิ่มเติม ให้ดูเสมือนคีย์รหัส.

Windows NT: คุณสามารถใช้ค่าคงที่แยกซ้าย และขวาเมื่อต้องการระบุคีย์บางอย่าง ดูส่วนหมายเหตุสำหรับข้อมูลเพิ่มเติม.

ส่งกลับค่า

ถ้าฟังก์ชันสำเร็จ ค่าส่งกลับระบุว่า ในการกดคีย์ถูกนับตั้งแต่การเรียกล่าสุดเพื่อGetAsyncKeyStateและว่าคีย์กำลังขึ้น หรือลง ถ้าบิตสำคัญมากที่สุด มีการตั้งค่าคีย์การเสีย และถ้าบิตสำคัญน้อยที่สุด มีการตั้งค่าคีย์ถูกกดหลังจากการเรียกก่อนหน้าเพื่อGetAsyncKeyState ส่งคืนค่าเป็นศูนย์ถ้าหน้าต่างในหัวข้อหรือกระบวนการอื่นในปัจจุบันมีโฟกัสของแป้นพิมพ์.

Windows 95: Windows 95 ไม่สนับสนุนค่าคงแยกซ้าย และขวา ถ้าคุณเรียกใช้GetAsyncKeyStateกับค่าคงที่เหล่านี้ ส่งคืนค่าเป็นศูนย์.

หมายเหตุ

ฟังก์ชันGetAsyncKeyStateการทำงาน ด้วยปุ่มเมาส์ อย่างไรก็ตาม ทำการตรวจสอบในสถานะของปุ่มเมาส์ที่มีอยู่จริง ไม่ได้อยู่บนปุ่มเมาส์แบบลอจิคัลที่แมปกับปุ่มทางกายภาพ ส่งตัวอย่าง การโทรGetAsyncKeyState(VK_LBUTTON) เสมอกลับสถานะของจริงปุ่มเมาส์ด้านซ้าย คำนึงถึงว่าถูกแมปไปยังปุ่มเมาส์ด้านซ้าย หรือทางขวา คุณสามารถกำหนดว่าแมปปัจจุบันของระบบทางกายภาพเมาส์ปุ่มปุ่มเมาส์แบบลอจิคัลได้ โดยการเรียก

GetSystemMetrics(SM_SWAPBUTTON) 

 

ที่ส่งกลับค่า TRUE ถ้าถูกสลับปุ่มเมาส์.

คุณสามารถใช้ค่าคงที่เสมือนคีย์รหัส VK_SHIFT, VK_CONTROL และ VK_MENU เป็นค่าสำหรับพารามิเตอร์vKey ซึ่งทำให้สถานะของกะ ctrl หรือคีย์ alt โดยไม่แยกระหว่างซ้ายและขวา.

Windows NT: คุณสามารถใช้ค่าคงเสมือนคีย์รหัสต่อไปนี้เป็นค่าสำหรับvKeyเพื่อแยกความแตกต่างระหว่างอินสแตนซ์ที่ซ้าย และขวาของแป้นเหล่านั้น.

รหัส ความหมาย
VK_LSHIFT VK_RSHIFT
VK_LCONTROL VK_RCONTROL
VK_LMENU VK_RMENU

ค่าเหล่านี้คงแยกซ้าย และขวาจะพร้อมใช้งานเมื่อคุณเรียกใช้การGetKeyboardState, SetKeyboardState, GetAsyncKeyState, GetKeyStateและฟังก์ชันMapVirtualKey.

Windows CE: ฟังก์ชันGetAsyncKeyStateสนับสนุนค่าที่ซ้าย และขวาเสมือนหลักคง ดังนั้นคุณสามารถตรวจสอบว่า ปุ่มซ้ายหรือขวาแป้นถูกกด ค่าคงที่เหล่านี้เป็น VK_LCONTROL, VK_RCONTROL, VK_LMENU, VK_RMENU, VK_LSHIFT และ VK_RSHIFT.

บิตสำคัญน้อยที่สุดของค่าที่ส่งคืนไม่ถูกต้องใน Windows CE และควรละเว้น.

GetAsyncKeyStateจะคืนคีย์สถานะปัจจุบันแม้ว่าหน้าต่างในหัวข้อหรือกระบวนการอื่นในปัจจุบันมีโฟกัสของแป้นพิมพ์.

คุณยังสามารถใช้ค่าคงเสมือนคีย์รหัส VK_LBUTTON เพื่อตรวจสอบสถานะของเคล็ดลับสไตลัส, (ขึ้น/ลง), อยู่หน้าจอสัมผัส.

QuickInfo

nbsp Windows &NT:ต้องการเวอร์ชัน 3.1 หรือรุ่นที่ใหม่กว่า
Windows:ต้องใช้ Windows 95 หรือรุ่นที่ใหม่กว่า
Windows CE:ต้องการเวอร์ชัน 1.0 หรือรุ่นใหม่กว่า
หัวข้อ:ประกาศใน winuser.h
ไลบรารีที่นำเข้า:ใช้ user32.lib.

ดูเพิ่มเติม

ภาพรวมการป้อนข้อมูลของแป้นพิมพ์แป้นพิมพ์ป้อนฟังก์ชัน GetKeyboardState, GetKeyState, GetSystemMetrics, MapVirtualKey, SetKeyboardState

Index