Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
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 pour l’objet graphique d’intérêt. Il peut s’agir d’un handle à 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 relatives à 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 en mémoire tampon |
|---|---|
|
|
|
DIBSECTION, si cbBuffer est défini |
|
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 est le 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 correspond au nombre d’octets stockés dans la mémoire tampon.
Si la fonction réussit et que lpvObject a la valeur NULL, la valeur de retour est le 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 par le paramètre lpvObject doit être suffisamment grande pour recevoir les informations relatives à 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 vers 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 contenu dans la DIBSECTION contiendra un pointeur vers les valeurs de bits de la bitmap.
Si hgdiobj est un handle vers 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 vers 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 vers une police, logFONT retourné est le LOGFONT utilisé pour créer la police. Si Windows a dû 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 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 peint horizontalement.
Examples
Pour obtenir un exemple, consultez Stockage d’une image.
Spécifications
| Requirement | Valeur |
|---|---|
| Client minimum requis | Windows 2000 Professionnel [applications de bureau uniquement] |
| Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
| plateforme cible | Fenêtres |
| Header | wingdi.h (include Windows.h) |
| Library | Gdi32.lib |
| DLL | Gdi32.dll |
Voir aussi
Fonctions de contexte d’appareil