標籤: 暫無標籤

  
M_KEYDOWN

  M_KEYDOWN,非系統健被按下。

  當用戶按下了一個非系統鍵時,框架調用這個函數OnKeyDown。

  CWnd::OnKeyDown

  afx_msg void OnKeyDown( UINT nchar, UINT nRepCnt, UINT nFlags );

  參數:

  

nChar指定了給定鍵的虛擬鍵碼。
nRepCnt重複計數(用戶按住鍵引起的重複擊鍵數目)。
nFlags指定了掃描碼、暫態鍵碼、原來的鍵狀態和上下文代碼,如下面的列表所示:描述0-7 掃描碼(依賴於OEM的值) 8 擴展鍵,比如功能鍵或數字鍵盤上的鍵(如果它是擴展鍵,則為1) 9-10 未使用 11-12 Windows內部使用 13 上下文代碼(如果按下鍵時Alt鍵時被按下的,則為1;否則為0) 14 原來的鍵狀態(如果在調用之前鍵時按下的,則為1;如果鍵是彈起的,則為0) 15 暫態(如果鍵正在被釋放,則為1;如果鍵正被按下,則為0) 具體查看該函數功能。
M_KEYDOWN和WM_SYSKEYDOWN是消息結構中的消息,用GetMessage取得消息結構。

  有WM_COMMAND消息後會發送WM_CHAR消息。

  與之功能類的還有:

  WM_SYSKEYDOWN和WM_KEYUP,字面看出一個是系統菜單健按下,一個是抬起,沒被按下。

  簡單的說就是:

  用WM_KEYDOWN和WM_SYSKEYDOWN判斷消息類型

  WM_COMMAND或WM_SYSCOMMAND處理消息。

  請看WM_COMMAND和WM_SYSCOMMAND。

相關評論

同義詞:暫無同義詞