PSN_QUERYINITIALFOCUS通知程式碼
由屬性工作表傳送,以提供屬性工作表頁面的機會,以指定應該接收初始焦點的對話方塊控制項。 此通知碼會以 WM_NOTIFY 訊息的形式傳送。
PSN_QUERYINITIALFOCUS
lppsn = (LPPSHNOTIFY) lParam;
參數
-
lParam
-
PSHNOTIFY結構的指標。 將此結構的 lParam 成員轉換成 HWND 類型,以擷取預設會取得焦點的控制項控制碼。 結構包含NMHDR結構做為其第一個成員hdr。這個NMHDR結構的hwndFrom成員包含屬性工作表的控制碼。
傳回值
若要指定應該接收焦點的控制項,請傳回控制項的控制碼。 否則,傳回零且焦點會移至預設控制項。 若要設定傳回值,對話方塊程式必須以DWL_MSGRESULT值呼叫SetWindowLong函式,並傳回TRUE。
備註
處理此通知程式碼時,應用程式不得呼叫 SetFocus 函式。 傳回應該接收焦點的控制項控制碼,而屬性工作表管理員會處理焦點變更。
如果屬性工作表管理員判斷頁面上沒有控制項應該收到焦點,則不會傳送PSN_QUERYINITIALFOCUS通知碼。
此程式碼片段會實作PSN_QUERYINITIALFOCUS的簡單處理常式。 它會要求將初始焦點提供給位置控制項 (IDC_LOCATION) 。
case PSN_QUERYINITIALFOCUS :
SetWindowLong(hDlg,DWL_MSGRESULT, (LPARAM)GetDlgItem(hDlg, IDC_LOCATION));
return TRUE;
...
注意
使用 (精靈樣式 (PSH_AEROWIZARD) 時,不支援此通知碼。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows Server 2003 [僅限桌面應用程式] |
標頭 |
|