GetWindowLongA-Funktion (winuser.h)
Ruft Informationen zum angegebenen Fenster ab. Die Funktion ruft auch den 32-Bit-Wert (DWORD) am angegebenen Offset in den zusätzlichen Fensterspeicher ab.
Syntax
LONG GetWindowLongA(
[in] HWND hWnd,
[in] int nIndex
);
Parameter
[in] hWnd
Typ: HWND
Ein Handle für das Fenster und indirekt die Klasse, zu der das Fenster gehört.
[in] nIndex
Typ: int
Der nullbasierte Offset auf den abzurufenden Wert. Gültige Werte liegen im Bereich Null durch die Anzahl der Bytes des zusätzlichen Fensterspeichers, minus vier; Wenn Sie beispielsweise 12 oder mehr Bytes zusätzlichen Arbeitsspeicher angegeben haben, wäre der Wert 8 ein Index für die dritte 32-Bit-Ganzzahl. Geben Sie einen der folgenden Werte an, um einen anderen Wert abzurufen.
Wert | Bedeutung |
---|---|
|
Ruft die erweiterten Fensterstile ab. |
|
Ruft ein Handle für die Anwendung instance ab. |
|
Ruft ggf. ein Handle zum übergeordneten Fenster ab. |
|
Ruft den Bezeichner des Fensters ab. |
|
Ruft die Fensterstile ab. |
|
Ruft die dem Fenster zugeordneten Benutzerdaten ab. Diese Daten sind für die Verwendung durch die Anwendung vorgesehen, die das Fenster erstellt hat. Der Wert ist anfangs 0. |
|
Ruft die Adresse der Fensterprozedur oder ein Handle ab, das die Adresse der Fensterprozedur darstellt. Sie müssen die CallWindowProc-Funktion verwenden, um die Fensterprozedur aufzurufen. |
Die folgenden Werte sind auch verfügbar, wenn der hWnd-Parameter ein Dialogfeld identifiziert.
Wert | Bedeutung |
---|---|
|
Ruft die Adresse der Dialogfeldprozedur oder ein Handle ab, das die Adresse der Dialogfeldprozedur darstellt. Sie müssen die CallWindowProc-Funktion verwenden, um die Dialogfeldprozedur aufzurufen. |
|
Ruft den Rückgabewert einer Nachricht ab, die in der Dialogfeldprozedur verarbeitet wird. |
|
Ruft zusätzliche private Informationen für die Anwendung ab, z. B. Handles oder Zeiger. |
Rückgabewert
Typ: LONG
Wenn die Funktion erfolgreich ist, ist der Rückgabewert der angeforderte Wert.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Wenn SetWindowLong zuvor nicht aufgerufen wurde, gibt GetWindowLong null für Werte im zusätzlichen Fenster oder Klassenspeicher zurück.
Hinweise
Reservieren Sie zusätzlichen Fensterspeicher, indem Sie einen nonzero-Wert im cbWndExtra-Member der WNDCLASSEX-Struktur angeben, die mit der RegisterClassEx-Funktion verwendet wird.
Beispiele
Ein Beispiel finden Sie unter Erstellen, Aufzählen und Größenanpassung untergeordneter Windows-Fenster.
Hinweis
Der winuser.h-Header definiert GetWindowLong 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 |
APIs | ext-ms-win-ntuser-windowclass-l1-1-0 (eingeführt in Windows 8) |
Weitere Informationen
Konzept
Referenz