CWnd::OnSysKeyDown
如果 CWnd 物件擁有輸入焦點, OnSysKeyDown 成員函式由架構呼叫,而按住 ALT 鍵然後按另一個按鍵時。
afx_msg void OnSysKeyDown(
UINT nChar,
UINT nRepCnt,
UINT nFlags
);
參數
nChar
指定按下的按鍵的虛擬按鍵碼。 如需標準虛擬按鍵碼的清單,請參閱 Winuser.hnRepCnt
指定迴圈計數。nFlags
如下列清單所示,指定掃描碼、金鑰轉換程式碼、前一個主要的狀態和內容,程式碼:值
意義
0–7
掃描碼 (OEM 相依值)。 低位元組的高序位文字。
8
擴充的按鍵,例如一個功能鍵或金鑰數字鍵台上 (1,如果是一個擴充按鍵,則為 0)。
9–10
不適用。
11–12
在內部使用以視窗。
13
內容的程式碼 (1,如果按住 ALT 鍵,且按下按鍵時,則為 0)。
14
前一個主要狀態 (1,如果按鍵為已按下,在傳送訊息之前,為 0,如果按鍵引發)。
15
轉換狀態 (1,如果放開按鍵,則為 0,如果按下的按鍵)。
如需 OnSysKeyDown 呼叫,索引鍵轉換位元 (位元 15) 為 0。 內容程式碼位元 (位元 13) 為 1,如果按下 ALT 鍵,且按下按鍵時,它是 0,如果訊息傳送至使用中視窗,因為 Windows 沒有輸入焦點。
備註
如果視窗目前沒有輸入焦點,使用中視窗的 OnSysKeyDown 呼叫成員函式。 接收訊息的 CWnd 物件可以區別這兩種內容之間會藉由檢查 nFlags內容的程式碼。
當內容程式碼為 0 時, OnSysKeyDown 接收的 WM_SYSKEYDOWN 訊息可以傳遞至 TranslateAccelerator Windows 函式,處理它,就如同一般按鍵訊息而不是系統按鍵訊息。 這可讓快速鍵搭配使用中視窗,即使使用中視窗沒有輸入焦點。
因為自動迴圈,在這種情況下, WM_SYSKEYUP 接收訊息之前,會有超過一個 OnSysKeyDown 呼叫可能會發生。 前一個按鍵狀態 (位元 14) 可以用來判斷 OnSysKeyDown 呼叫是否表示第一個來源轉換或重複在轉換中。
如需增強 IBM - 101,而 102 鍵盤按鍵,增強金鑰是正確的 ALT 和右側的 CTRL 鍵鍵盤的主要部分,在叢集上按下 INS、DEL、HOME、結果、頁面,網站的頁面和方向鍵數字鍵台上左邊,和斜線 (/) 和在數字鍵台的按鍵輸入。 在 nFlags可能支援擴充位元金鑰的其他鍵盤。
注意事項 |
---|
此成員函式由架構呼叫可以讓您的應用程式處理 Windows 訊息。接收訊息時,參數會傳遞至函式反映這個框架接收的參數。如果您呼叫這個函式的基底類別實作,該實作會使用這個參數起始傳入訊息所提供函式取代的參數。 |
需求
Header: afxwin.h