Share via


defFrameProcA 函式 (winuser.h)

針對多文檔介面的視窗程式 (MDI) 框架視窗未處理的任何視窗訊息,提供默認處理。 視窗程式未明確處理的所有視窗訊息都必須傳遞至 DefFrameProc 函式,而不是 DefWindowProc 函 式。

語法

LRESULT DefFrameProcA(
  [in] HWND   hWnd,
  [in] HWND   hWndMDIClient,
  [in] UINT   uMsg,
  [in] WPARAM wParam,
  [in] LPARAM lParam
);

參數

[in] hWnd

類型: HWND

MDI 框架視窗的句柄。

[in] hWndMDIClient

類型: HWND

MDI 用戶端視窗的句柄。

[in] uMsg

類型: UINT

要處理的訊息。

[in] wParam

類型: WPARAM

其他特定訊息資訊。

[in] lParam

類型: LPARAM

其他特定訊息資訊。

傳回值

類型: LRESULT

傳回值會指定訊息處理的結果,並視訊息而定。 如果 hWndMDIClient 參數為 NULL,則傳回值與 DefWindowProc 函式相同。

備註

當應用程式的視窗程式未處理訊息時,通常會將訊息傳遞至 DefWindowProc 函式來處理訊息。 MDI 應用程式會使用 DefFrameProcDefMDIChildProc 函式,而不是 DefWindowProc 來提供預設的訊息處理。 應用程式通常會傳遞至 DefWindowProc (的所有訊息,例如非用戶端訊息,以及 WM_SETTEXT 訊息) 應改為傳遞至 DefFrameProcDefFrameProc 函式也會處理下列訊息。

訊息 回應
WM_COMMAND 啟動用戶選擇的 MDI 子視窗。 當使用者從 MDI 框架視窗的視窗選單選擇 MDI 子視窗時,就會傳送此訊息。 此訊息隨附的視窗標識碼會識別要啟動的 MDI 子視窗。
WM_MENUCHAR 當使用者按下 ALT+ – (減號) 鍵組合時,開啟使用中 MDI 子視窗的視窗功能表。
WM_SETFOCUS 將鍵盤焦點傳遞至 MDI 用戶端視窗,接著會將它傳遞給作用中的 MDI 子視窗。
WM_SIZE 調整 MDI 用戶端視窗的大小,以符合新框架視窗的工作區。 如果框架視窗程式將 MDI 用戶端視窗的大小調整為不同的大小,則不應該將訊息傳遞至 DefWindowProc 函 式。
 

注意

winuser.h 標頭會將 DefFrameProc 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 winuser.h (包含 Windows.h)
程式庫 User32.lib
Dll User32.dll

另請參閱

概念

DefMDIChildProc

DefWindowProc

多個檔介面

參考

WM_SETTEXT