WM_GETDLGCODE訊息

傳送至與 控制項相關聯的視窗程式。 根據預設,系統會處理控制項的所有鍵盤輸入;系統會將特定類型的鍵盤輸入解譯為對話方塊導覽鍵。 若要覆寫這個預設行為,控制項可以回應 WM_GETDLGCODE 訊息,以指出它想要自行處理的輸入類型。

#define WM_GETDLGCODE                   0x0087

參數

wParam

使用者按下的虛擬按鍵會提示 Windows 發出此通知。 處理常式必須選擇性地處理這些索引鍵。 例如,處理常式可能會接受和處理 VK_RETURN ,但委派 VK_TAB 給擁有者視窗。 如需值清單,請參閱 虛擬金鑰代碼

lParam

如果系統正在執行查詢) , 則為 MSG 結構的指標 (或 Null

傳回值

傳回值是下列一或多個值,表示應用程式處理的輸入類型。

傳回碼/值 Description
DLGC_BUTTON
0x2000
按鈕。
DLGC_DEFPUSHBUTTON
0x0010
預設的按鈕。
DLGC_HASSETSEL
0x0008
EM_SETSEL 訊息。
DLGC_RADIOBUTTON
0x0040
選項按鈕。
DLGC_STATIC
0x0100
靜態控制項。
DLGC_UNDEFPUSHBUTTON
0x0020
非預設的按鈕。
DLGC_WANTALLKEYS
0x0004
所有鍵盤輸入。
DLGC_WANTARROWS
0x0001
方向鍵。
DLGC_WANTCHARS
0x0080
WM_CHAR 訊息。
DLGC_WANTMESSAGE
0x0004
應用程式 (所有鍵盤輸入都會將此訊息傳遞至 MSG 結構中的控制項) 。
DLGC_WANTTAB
0x0002
TAB 鍵。

備註

雖然 DefWindowProc 函 式一律會傳回零,以回應 WM_GETDLGCODE 訊息,但預先定義控制項類別的視窗程式會傳回適用于每個類別的程式碼。

WM_GETDLGCODE訊息和傳回的值僅適用于使用者定義對話方塊控制項或子類別設定修改的標準控制項。

規格需求

需求
最低支援的用戶端
Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限桌面應用程式]
標頭
Winuser.h (包括 Windows.h)

另請參閱

參考

DefWindowProc

EM_SETSEL

味精

WM_CHAR

概念

對話方塊