DefFrameProcA-Funktion (winuser.h)
Stellt die Standardverarbeitung für alle Fenstermeldungen bereit, die die Fensterprozedur eines MDI-Framefensters (Multiple-Document Interface) nicht verarbeitet. Alle Fenstermeldungen, die nicht explizit von der Fensterprozedur verarbeitet werden, müssen an die DefFrameProc-Funktion übergeben werden, nicht die DefWindowProc-Funktion .
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 zum MDI-Rahmenfenster.
[in] hWndMDIClient
Typ: HWND
Ein Handle zum 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, entspricht der Rückgabewert der DefWindowProc-Funktion .
Hinweise
Wenn die Fensterprozedur einer Anwendung keine Nachricht verarbeitet, wird die Nachricht in der Regel an die DefWindowProc-Funktion übergeben, um die Nachricht zu verarbeiten. MDI-Anwendungen verwenden die Funktionen DefFrameProc und DefMDIChildProc anstelle von DefWindowProc , um standardmäßige Nachrichtenverarbeitung 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 behandelt auch die folgenden Nachrichten.
`Message` | Antwort |
---|---|
WM_COMMAND | Aktiviert das untergeordnete MDI-Fenster, das der Benutzer auswäht. Diese Nachricht wird gesendet, wenn der Benutzer ein untergeordnetes MDI-Fenster aus dem Fenstermenü des MDI-Framefensters auswählt. Der Fensterbezeichner, der diese Meldung begleitet, identifiziert das untergeordnete MDI-Fenster, das aktiviert werden soll. |
WM_MENUCHAR | Öffnet das Fenstermenü des aktiven MDI-untergeordneten 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 ansetzt, sollte die Nachricht nicht an die DefWindowProc-Funktion übergeben werden. |
Hinweis
Der winuser.h-Header definiert DefFrameProc als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der codierungsneutralen Aliase mit Code, der nicht codierungsneutral ist, kann zu Übereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
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 (enthalten Windows.h) |
Bibliothek | User32.lib |
DLL | User32.dll |
Weitere Informationen
Konzept
Mehrere Dokumentschnittstellen
Referenz