LoadImageA, fonction (winuser.h)
Charge une icône, un curseur, un curseur animé ou une bitmap.
Syntaxe
HANDLE LoadImageA(
[in, optional] HINSTANCE hInst,
[in] LPCSTR name,
[in] UINT type,
[in] int cx,
[in] int cy,
[in] UINT fuLoad
);
Paramètres
[in, optional] hInst
Type : HINSTANCE
Handle pour le module d’une DLL ou d’un exécutable (.exe) qui contient l’image à charger. Pour plus d’informations, consultez GetModuleHandle. Notez qu’à partir de Windows 32 bits, un handle d’instance (HINSTANCE), tel que le handle d’instance d’application exposé par l’appel de fonction système de WinMain, et un handle de module (HMODULE) sont la même chose.
Pour charger une image prédéfinie ou une ressource autonome (icône, curseur ou fichier bitmap), définissez ce paramètre sur NULL.
[in] name
Type : LPCTSTR
Image à charger.
Si le paramètre hInst n’est pas NULL et que le paramètre fuLoad omet LR_LOADFROMFILE, name spécifie la ressource d’image dans le module hInst .
Si la ressource image doit être chargée par nom à partir du module, le paramètre name est un pointeur vers une chaîne terminée par null qui contient le nom de la ressource d’image.
Si la ressource image doit être chargée par ordinal à partir du module, utilisez la macro MAKEINTRESOURCE pour convertir l’ordinal d’image en un formulaire qui peut être transmis à la fonction LoadImage .
Si le paramètre hInst a la valeur NULL et que le paramètre fuLoad omet la valeur LR_LOADFROMFILE et inclut la LR_SHARED, le nom spécifie l’image prédéfinie à charger.
Les identificateurs d’image prédéfinis sont définis dans Winuser.h
et ont les préfixes suivants :
Préfixe | Signification |
---|---|
OBM_ | Bitmaps OEM. Utilisez la macro MAKEINTRESOURCE pour les transmettre. |
OCI_ | Icônes OEM. Utilisez la macro MAKEINTRESOURCE pour les transmettre. |
OCR_ | Curseurs OEM. Utilisez la macro MAKEINTRESOURCE pour les transmettre. |
IDI_ | Icônes standard |
IDC_ | Curseurs standard |
Pour passer des constantes d’identificateurs d’image OEM à la fonction LoadImage , utilisez la macro MAKEINTRESOURCE . Par exemple, pour charger le curseur OCR_NORMAL , passez MAKEINTRESOURCE(OCR_NORMAL)
comme paramètre name , NULL comme paramètre hInst et LR_SHARED comme l’un des indicateurs au paramètre fuLoad .
Si le paramètre hInst a la valeur NULL et que le paramètre fuLoad inclut la valeur LR_LOADFROMFILE, name est le nom du fichier qui contient la ressource autonome (icône, curseur ou fichier bitmap), par exemple. c:\myicon.ico
Pour plus d’informations, consultez la section Remarques ci-dessous.
[in] type
Type : UINT
Type d’image à charger.
Ce paramètre peut être l’une des valeurs suivantes :
Valeur | Signification |
---|---|
IMAGE_BITMAP | Charge une bitmap. |
IMAGE_CURSOR | Charge un curseur. |
IMAGE_ICON | Charge une icône. |
[in] cx
Type : int
Largeur, en pixels, de l’icône ou du curseur. Si ce paramètre est égal à zéro et que le paramètre fuLoad est LR_DEFAULTSIZE, la fonction utilise la valeur de métrique système SM_CXICON ou SM_CXCURSOR pour définir la largeur. Si ce paramètre est égal à zéro et que LR_DEFAULTSIZE n’est pas utilisé, la fonction utilise la largeur de ressource réelle.
[in] cy
Type : int
Hauteur, en pixels, de l’icône ou du curseur. Si ce paramètre est égal à zéro et que le paramètre fuLoad est LR_DEFAULTSIZE, la fonction utilise la valeur de métrique système SM_CYICON ou SM_CYCURSOR pour définir la hauteur. Si ce paramètre est égal à zéro et que LR_DEFAULTSIZE n’est pas utilisé, la fonction utilise la hauteur de ressource réelle.
[in] fuLoad
Type : UINT
Ce paramètre peut prendre une ou plusieurs des valeurs suivantes.
Valeur retournée
Type : HANDLE
Si la fonction réussit, la valeur de retour est le handle de l’image nouvellement chargée.
Si la fonction échoue, la valeur de retour est NULL. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Remarques
Si IS_INTRESOURCE(name) a la valeur TRUE, name spécifie l’identificateur entier de la ressource donnée. Sinon, il s’agit d’un pointeur vers une chaîne terminée par null. Si le premier caractère de la chaîne est un signe en livre (#), les caractères restants représentent un nombre décimal qui spécifie l’identificateur entier de la ressource. Par exemple, la chaîne « #258 » représente l’identificateur 258.
Lorsque vous avez terminé d’utiliser une bitmap, un curseur ou une icône que vous avez chargé sans spécifier l’indicateur LR_SHARED , vous pouvez libérer la mémoire associée en appelant l’une des fonctions du tableau suivant.
Ressource | Fonction Release |
---|---|
Bitmap | DeleteObject |
Curseur | DestroyCursor |
Icône | DestroyIcon |
Le système supprime automatiquement ces ressources lorsque le processus qui les a créées se termine ; toutefois, l’appel de la fonction appropriée permet d’économiser de la mémoire et de réduire la taille de l’ensemble de travail du processus.
Exemples
Pour obtenir un exemple, consultez Utilisation de classes de fenêtre.
Notes
L’en-tête winuser.h définit LoadImage comme un 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. Le mélange 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-gui-l1-1-0 (introduit dans Windows 8) |
Voir aussi
Conceptuel
Autres ressources
Référence