GetObject, fonction (wingdi.h)
La fonction GetObject récupère des informations pour l’objet graphique spécifié.
Syntaxe
int GetObject(
[in] HANDLE h,
[in] int c,
[out] LPVOID pv
);
Paramètres
[in] h
Handle de l’objet graphique d’intérêt. Il peut s’agir d’un handle pour l’un des éléments suivants : une bitmap logique, un pinceau, une police, une palette, un stylet ou une bitmap indépendante de l’appareil créée en appelant la fonction CreateDIBSection .
[in] c
Nombre d’octets d’informations à écrire dans la mémoire tampon.
[out] pv
Pointeur vers une mémoire tampon qui reçoit les informations sur l’objet graphique spécifié.
Le tableau suivant montre le type d’informations que la mémoire tampon reçoit pour chaque type d’objet graphique que vous pouvez spécifier avec hgdiobj.
Type d’objet | Données écrites dans la mémoire tampon |
---|---|
|
|
|
DIBSECTION, si cbBuffer a la |
|
Nombre WORD du nombre d’entrées dans la palette logique |
|
|
|
|
|
|
|
Si le paramètre lpvObject a la valeur NULL, la valeur de retour de la fonction correspond au nombre d’octets requis pour stocker les informations qu’il écrit dans la mémoire tampon pour l’objet graphique spécifié.
L’adresse de lpvObject doit se trouver sur une limite de 4 octets ; sinon, GetObject échoue.
Valeur retournée
Si la fonction réussit et que lpvObject est un pointeur valide, la valeur de retour est le nombre d’octets stockés dans la mémoire tampon.
Si la fonction réussit et que lpvObject a la valeur NULL, la valeur renvoyée correspond au nombre d’octets requis pour contenir les informations que la fonction stockerait dans la mémoire tampon.
Si la fonction échoue, la valeur de retour est égale à zéro.
Remarques
La mémoire tampon pointée vers le paramètre lpvObject doit être suffisamment grande pour recevoir les informations sur l’objet graphique. Selon l’objet graphique, la fonction utilise une structure BITMAP, DIBSECTION, EXTLOGPEN, LOGBRUSH, LOGFONT ou LOGPEN , ou un nombre d’entrées de table (pour une palette logique).
Si hgdiobj est un handle d’une bitmap créée en appelant CreateDIBSection et que la mémoire tampon spécifiée est suffisamment grande, la fonction GetObject retourne une structure DIBSECTION . En outre, le membre bmBits de la structure BITMAP contenue dans DIBSECTION contiendra un pointeur vers les valeurs de bits de la bitmap.
Si hgdiobj est un handle d’une bitmap créée par tout autre moyen, GetObject retourne uniquement les informations de largeur, de hauteur et de format de couleur de la bitmap. Vous pouvez obtenir les valeurs de bits de la bitmap en appelant la fonction GetDIBits ou GetBitmapBits .
Si hgdiobj est un handle d’une palette logique, GetObject récupère un entier de 2 octets qui spécifie le nombre d’entrées dans la palette. La fonction ne récupère pas la structure LOGPALETTE définissant la palette. Pour récupérer des informations sur les entrées de palette, une application peut appeler la fonction GetPaletteEntries .
Si hgdiobj est un handle d’une police, le LOGFONT retourné est le LOGFONT utilisé pour créer la police. Si Windows devait effectuer une interpolation de la police parce que le LOGFONT précis n’a pas pu être représenté, l’interpolation ne sera pas reflétée dans le LOGFONT. Par exemple, si vous demandez une version verticale d’une police qui ne prend pas en charge la peinture verticale, logFONT indique que la police est verticale, mais Windows la peindra horizontalement.
Exemples
Pour obtenir un exemple, consultez Stockage d’une image.
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 | wingdi.h (inclure Windows.h) |
Bibliothèque | Gdi32.lib |
DLL | Gdi32.dll |
Voir aussi
Fonctions de contexte d’appareil