DefFrameProcA-Funktion (winuser.h)
Stellt die Standardverarbeitung für alle Fenstermeldungen bereit, die von der Fensterprozedur eines MDI-Framefensters (Multiple Document Interface) nicht verarbeitet werden. Alle Fenstermeldungen, die nicht explizit von der Fensterprozedur verarbeitet werden, müssen an die Funktion DefFrameProc und nicht an die DefWindowProc-Funktion übergeben werden.
Syntax
LRESULT DefFrameProcA(
[in] HWND hWnd,
[in] HWND hWndMDIClient,
[in] UINT uMsg,
[in] WPARAM wParam,
[in] LPARAM lParam
);
Parameter
[in] hWnd
Typ: HWND
Ein Handle für das MDI-Framefenster.
[in] hWndMDIClient
Typ: HWND
Ein Handle für das MDI-Clientfenster.
[in] uMsg
Typ: UINT
Die zu verarbeitende Meldung.
[in] wParam
Typ: WPARAM
Zusätzliche meldungsspezifische Informationen.
[in] lParam
Typ: LPARAM
Zusätzliche meldungsspezifische Informationen.
Rückgabewert
Typ: LRESULT
Der Rückgabewert gibt das Ergebnis der Nachrichtenverarbeitung an und hängt von der Nachricht ab. Wenn der hWndMDIClient-ParameterNULL ist, ist der Rückgabewert der gleiche wie für die DefWindowProc-Funktion .
Hinweise
Wenn die Fensterprozedur einer Anwendung keine Nachricht verarbeitet, übergibt sie die Nachricht in der Regel an die Funktion DefWindowProc , um die Nachricht zu verarbeiten. MDI-Anwendungen verwenden die Funktionen DefFrameProc und DefMDIChildProc anstelle von DefWindowProc , um die Standardnachrichtenverarbeitung bereitzustellen. Alle Nachrichten, die eine Anwendung normalerweise an DefWindowProc übergeben würde (z. B. Nichtclientnachrichten und die WM_SETTEXT Nachricht), sollten stattdessen an DefFrameProc übergeben werden. Die DefFrameProc-Funktion verarbeitet auch die folgenden Meldungen.
Meldung | Antwort |
---|---|
WM_COMMAND | Aktiviert das untergeordnete MDI-Fenster, das der Benutzer auswäht. Diese Nachricht wird gesendet, wenn der Benutzer im Fenstermenü des MDI-Rahmenfensters ein untergeordnetes MDI-Fenster auswäht. Der Dieser Meldung beigefügte Fensterbezeichner identifiziert das zu aktivierende untergeordnete MDI-Fenster. |
WM_MENUCHAR | Öffnet das Fenstermenü des aktiven untergeordneten MDI-Fensters, wenn der Benutzer die Tastenkombination ALT+ – (Minus) drückt. |
WM_SETFOCUS | Übergibt den Tastaturfokus an das MDI-Clientfenster, das ihn wiederum an das aktive untergeordnete MDI-Fenster übergibt. |
WM_SIZE | Ändert die Größe des MDI-Clientfensters so, dass es in den Clientbereich des neuen Framefensters passt. Wenn die Framefensterprozedur das MDI-Clientfenster auf eine andere Größe vergrößert, sollte die Nachricht nicht an die DefWindowProc-Funktion übergeben werden. |
Hinweis
Der winuser.h-Header definiert DefFrameProc als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winuser.h (einschließlich Windows.h) |
Bibliothek | User32.lib |
DLL | User32.dll |
Siehe auch
Konzept
Mehrere Dokumentschnittstellen
Referenz