GetWindowLongA, fonction (winuser.h)

Récupère des informations sur la fenêtre spécifiée. La fonction récupère également la valeur 32 bits (DWORD) au décalage spécifié dans la mémoire de fenêtre supplémentaire.

Note Si vous récupérez un pointeur ou un handle, cette fonction a été remplacée par la fonction GetWindowLongPtr . (Les pointeurs et les handles sont 32 bits sur Windows 32 bits et 64 bits sur Windows 64 bits.) Pour écrire du code compatible avec les versions 32 bits et 64 bits de Windows, utilisez GetWindowLongPtr.

 

Syntaxe

LONG GetWindowLongA(
  [in] HWND hWnd,
  [in] int  nIndex
);

Paramètres

[in] hWnd

Type : HWND

Handle de la fenêtre et, indirectement, de la classe à laquelle appartient la fenêtre.

[in] nIndex

Type : int

Décalage de base zéro par rapport à la valeur à récupérer. Les valeurs valides sont comprises entre zéro et le nombre d’octets de mémoire de fenêtre supplémentaire, moins quatre ; Par exemple, si vous avez spécifié 12 octets ou plus de mémoire supplémentaire, la valeur 8 est un index du troisième entier 32 bits. Pour récupérer une autre valeur, spécifiez l’une des valeurs suivantes.

Valeur Signification
GWL_EXSTYLE
-20
Récupère les styles de fenêtre étendus.
GWL_HINSTANCE
-6
Récupère un handle pour l’application instance.
GWL_HWNDPARENT
-8
Récupère un handle dans la fenêtre parente, le cas échéant.
GWL_ID
-12
Récupère l’identificateur de la fenêtre.
GWL_STYLE
-16
Récupère les styles de fenêtre.
GWL_USERDATA
-21
Récupère les données utilisateur associées à la fenêtre. Ces données sont destinées à être utilisées par l’application qui a créé la fenêtre. Sa valeur est initialement égale à zéro.
GWL_WNDPROC
-4
Récupère l’adresse de la procédure de fenêtre, ou un handle représentant l’adresse de la procédure de fenêtre. Vous devez utiliser la fonction CallWindowProc pour appeler la procédure de fenêtre.
 

Les valeurs suivantes sont également disponibles lorsque le paramètre hWnd identifie une boîte de dialogue.

Valeur Signification
DWL_DLGPROC
DWLP_MSGRESULT + sizeof(LRESULT)
Récupère l’adresse de la procédure de boîte de dialogue ou un handle représentant l’adresse de la procédure de boîte de dialogue. Vous devez utiliser la fonction CallWindowProc pour appeler la procédure de boîte de dialogue.
DWL_MSGRESULT
0
Récupère la valeur de retour d’un message traité dans la procédure de boîte de dialogue.
DWL_USER
DWLP_DLGPROC + sizeof(DLGPROC)
Récupère des informations supplémentaires privées pour l’application, telles que des handles ou des pointeurs.

Valeur retournée

Type : LONG

Si la fonction réussit, la valeur de retour est la valeur demandée.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Si SetWindowLong n’a pas été appelé précédemment, GetWindowLong retourne zéro pour les valeurs de la fenêtre ou de la mémoire de classe supplémentaire.

Remarques

Réservez une mémoire de fenêtre supplémentaire en spécifiant une valeur différente de zéro dans le membre cbWndExtra de la structure WNDCLASSEX utilisée avec la fonction RegisterClassEx .

Exemples

Pour obtenir un exemple, consultez Création, énumération et dimensionnement de windows enfants.

Notes

L’en-tête winuser.h définit GetWindowLong en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winuser.h (inclure Windows.h)
Bibliothèque User32.lib
DLL User32.dll
Ensemble d’API ext-ms-win-ntuser-windowclass-l1-1-0 (introduit dans Windows 8)

Voir aussi

CallWindowProc

Conceptuel

GetWindowLongPtr

Référence

RegisterClassEx

SetParent

SetWindowLong

WNDCLASS

classes de fenêtre