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

DefMDIChildProc

DefWindowProc

Mehrere Dokumentschnittstellen

Referenz

WM_SETTEXT