WM_KEYDOWN

ความ WM_KEYDOWN ถูกลงรายการบัญชีในหน้าต่างด้วยการโฟกัสของแป้นพิมพ์เมื่อมีกดแป้นใช่ คีย์ใช่เป็นคีย์ที่ถูกกดเมื่อแป้น altไม่กด.

 WM_KEYDOWN nVirtKey = (int) wParam    / / เสมือนคีย์รหัส lKeyData = lParam          / / คีย์ข้อมูล 

 

พารามิเตอร์

nVirtKey
ค่าของwParam ระบุรหัสคีย์เสมือนของคีย์การใช่.
lKeyData
ค่าของlParam ระบุจำนวนการทำซ้ำ สแกนโค้ด ขยายคีย์การตั้งค่าสถานะ บริบทรหัส ธงคีย์สถานะก่อนหน้า และสถานะการเปลี่ยนธง ชาติ ดังที่แสดงในตารางต่อไปนี้.
ค่า คำอธิบาย
0–15 ระบุจำนวนซ้ำสำหรับข้อความปัจจุบัน ค่าเป็นจำนวนครั้งที่มีการกดแป้นที่ auto-ซ้ำเป็นผลลัพธ์ของผู้ใช้แป้นค้างไว้ ถ้ากดแป้นพิมพ์ถูกเก็บไว้นานพอ หลายข้อความจะถูกส่งไป อย่างไรก็ตาม นับซ้ำไม่สะสม.
16–23 ระบุรหัสสแกน ค่าขึ้นกับผู้ผลิตอุปกรณ์ดั้งเดิม (OEM).
24 ระบุว่า หมายเลข คีย์การขยาย เช่น alt ขวาและแป้น ctrl ที่ปรากฏบนแป้นพิมพ์ขั้นสูง 101-102-คีย์ หรือการ มีค่าเป็น 1 ถ้าเป็นคีย์การขยาย มิฉะนั้น เป็น 0.
25–28 สงวน ไม่ได้ใช้.
29 ระบุรหัสบริบท มีค่าเป็น 0 สำหรับความ WM_KEYDOWN เสมอ.
30 ระบุคีย์สถานะก่อนหน้า มีค่าเป็น 1 ถ้าคีย์การลงก่อนที่จะส่งข้อความ หรือเป็น 0 ถ้าคีย์การขึ้น.
31 ระบุสถานะช่วงการเปลี่ยนภาพ มีค่าเป็น 0 สำหรับความ WM_KEYDOWN เสมอ.

ส่งกลับค่า

แอปพลิเคชันควรกลับศูนย์ถ้าดำเนินกับข้อความนี้.

การกระทำเริ่มต้น

ถ้ามีกดปุ่ม f10 ฟังก์ชันDefWindowProcตั้งค่าสถานะการภายใน เมื่อDefWindowProcได้รับข้อความ WM_KEYUP ฟังก์ชันการตรวจสอบว่า ค่าสถานะภายในถูกตั้งค่า และ ถ้าเป็นเช่นนั้น ส่งข้อความWM_SYSCOMMANDไปยังหน้าต่างระดับบนสุด พารามิเตอร์wParamของข้อความถูกตั้งค่าเป็น SC_KEYMENU.

หมายเหตุ

เนื่องจากการคุณลักษณะ autorepeat มากกว่าหนึ่ง WM_KEYDOWN ข้อความอาจถูกลงรายการบัญชีก่อนลงรายการบัญชีข้อความ WM_KEYUP สถานะคีย์ก่อนหน้า (บิต 30) คุณสามารถใช้เพื่อกำหนดว่า ข้อความ WM_KEYDOWN บ่งชี้ลงก่อนช่วงการเปลี่ยนภาพหรือช่วงการเปลี่ยนภาพซ้ำลง.

สำหรับแป้นพิมพ์ขั้นสูง 101-102-คีย์ และ ขยายคีย์คือ ctrl + spacebar และแป้น ctrl ในส่วนหลักของแป้นพิมพ์ ins, del บ้าน จบ หน้าขึ้น เพลง และแป้นลูกศรในคลัสเตอร์อยู่ทางซ้ายของแป้นพิมพ์ตัวเลข และการหาร (/) และป้อนคีย์ในแป้นพิมพ์ตัวเลข แป้นพิมพ์อื่นอาจรองรับบิตการขยายคีย์ในพารามิเตอร์lKeyData.

QuickInfo

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

ดูเพิ่มเติม

ภาพรวมการป้อนข้อมูลของแป้นพิมพ์ข้อความการป้อนข้อมูลของแป้นพิมพ์ DefWindowProc, WM_CHAR, WM_KEYUP, WM_SYSCOMMAND

Index