WM_VKEYTOITEM訊息
由具有LBS_WANTKEYBOARDINPUT樣式的清單框傳送給其擁有者,以回應WM_KEYDOWN訊息。
WM_VKEYTOITEM
WPARAM wParam;
LPARAM lParam;
參數
傳回值
傳回值會指定應用程式回應訊息時所執行的動作。 -2 的傳回值表示應用程式會處理選取專案的所有層面,而且清單框不需要採取任何進一步的動作。 (請參閱。-1 的傳回值表示清單框應該執行預設動作以響應擊鍵。 傳回值 0 或更新值會指定清單框中專案的索引,並指出清單框應該在指定的專案上執行按鍵的預設動作。
備註
-2 的傳回值僅適用於清單框控制項未轉譯成字元的索引鍵。 如果WM_KEYDOWN訊息轉譯為WM_CHAR訊息,而且應用程式會處理因按下按鍵而產生的WM_VKEYTOITEM訊息,清單框會忽略傳回值,並執行該字元的默認處理。 索引鍵所產生的WM_KEYDOWN訊息,例如VK_UP、VK_DOWN、VK_NEXT和VK_PREVIOUS,不會轉譯為WM_CHAR訊息。 在這種情況下,截 獲WM_VKEYTOITEM 訊息並傳回 -2 可防止清單框執行該索引鍵的默認處理。
若要擷取產生char訊息並執行特殊處理的索引鍵,應用程式必須將清單框子類別化、擷取 WM_KEYDOWN 和 WM_CHAR 訊息,並在子類別程式中適當地處理訊息。
上述備註適用於以LBS_WANTKEYBOARDINPUT樣式建立的一般清單框。 如果清單框為擁有者繪製,應用程式必須處理 WM_CHARTOITEM 訊息。
DefWindowProc 函式會傳回 -1。
如果對話框程式處理此訊息,它應該會將所需的傳回值 轉換成 BOOL ,並直接傳回值。 會忽略 SetWindowLong 函式所設定DWL_MSGRESULT值。
需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows Server 2003 [僅限傳統型應用程式] |
頁首 |
|
另請參閱
-
參考
-
其他資源