LoadImageA-Funktion (winuser.h)
Lädt ein Symbol, einen Cursor, einen animierten Cursor oder eine Bitmap.
Syntax
HANDLE LoadImageA(
[in, optional] HINSTANCE hInst,
[in] LPCSTR name,
[in] UINT type,
[in] int cx,
[in] int cy,
[in] UINT fuLoad
);
Parameter
[in, optional] hInst
Typ: HINSTANCE
Ein Handle für das Modul einer DLL oder ausführbaren Datei (.exe), die das zu ladende Image enthält. Weitere Informationen finden Sie unter GetModuleHandle. Beachten Sie, dass ab 32-Bit-Windows ein Instanzhandle (HINSTANCE), z. B. das Anwendungsinstanzhandle, das durch den Systemfunktionsaufruf von WinMain verfügbar gemacht wird, und ein Modulhandle (HMODULE) dasselbe sind.
Legen Sie diesen Parameter auf NULL fest, um ein vordefiniertes Bild oder eine eigenständige Ressource (Symbol, Cursor oder Bitmapdatei) zu laden.
[in] name
Typ: LPCTSTR
Das zu ladende Bild.
Wenn der hInst-Parameter nicht NULL ist und der fuLoad-ParameterLR_LOADFROMFILE auslässt, gibt name die Imageressource im hInst-Modul an.
Wenn die Imageressource anhand des Namens aus dem Modul geladen werden soll, ist der Name-Parameter ein Zeiger auf eine Zeichenfolge mit NULL-Beendigung, die den Namen der Imageressource enthält.
Wenn die Bildressource von der Ordnungszahl aus dem Modul geladen werden soll, verwenden Sie das MAKEINTRESOURCE-Makro , um die Ordnungszahl des Bilds in ein Formular zu konvertieren, das an die LoadImage-Funktion übergeben werden kann.
Wenn der hInst-ParameterNULL ist und der fuLoad-Parameter den LR_LOADFROMFILE Wert auslässt und den LR_SHARED enthält, gibt der Name das zu ladende vordefinierte Bild an.
Die vordefinierten Bildbezeichner sind in Winuser.h
definiert und weisen die folgenden Präfixe auf:
Präfix | Bedeutung |
---|---|
OBM_ | OEM-Bitmaps. Verwenden Sie das MAKEINTRESOURCE-Makro , um diese zu übergeben. |
OIC_ | OEM-Symbole. Verwenden Sie das MAKEINTRESOURCE-Makro , um diese zu übergeben. |
OCR_ | OEM-Cursor. Verwenden Sie das MAKEINTRESOURCE-Makro , um diese zu übergeben. |
IDI_ | Standardsymbole |
IDC_ | Standardcursor |
Verwenden Sie das MAKEINTRESOURCE-Makro, um OEM-Bildbezeichnerkonstanten an die LoadImage-Funktion zu übergeben. Um beispielsweise den OCR_NORMAL Cursor zu laden, übergeben Sie MAKEINTRESOURCE(OCR_NORMAL)
als name-Parameter, NULL als hInst-Parameter und LR_SHARED als eines der Flags an den fuLoad-Parameter.
Wenn der hInst-ParameterNULL ist und der fuLoad-Parameter den LR_LOADFROMFILE Wert enthält, ist name der Name der Datei, die die eigenständige Ressource (Symbol, Cursor oder Bitmapdatei) enthält, c:\myicon.ico
z. B. .
Weitere Informationen finden Sie weiter unten im Abschnitt "Hinweise".
[in] type
Typ: UINT
Der Typ des zu ladenden Bilds.
Dieser Parameter kann einer der folgenden Werte sein:
Wert | Bedeutung |
---|---|
IMAGE_BITMAP | Lädt eine Bitmap. |
IMAGE_CURSOR | Lädt einen Cursor. |
IMAGE_ICON | Lädt ein Symbol. |
[in] cx
Typ: int
Die Breite des Symbols oder Cursors in Pixel. Wenn dieser Parameter null und der fuLoad-ParameterLR_DEFAULTSIZE ist, verwendet die Funktion den SM_CXICON oder SM_CXCURSOR Systemmetrikwert, um die Breite festzulegen. Wenn dieser Parameter null ist und LR_DEFAULTSIZE nicht verwendet wird, verwendet die Funktion die tatsächliche Ressourcenbreite.
[in] cy
Typ: int
Die Höhe des Symbols oder Cursors in Pixel. Wenn dieser Parameter null und der fuLoad-ParameterLR_DEFAULTSIZE ist, verwendet die Funktion den SM_CYICON- oder SM_CYCURSOR Systemmetrikwert, um die Höhe festzulegen. Wenn dieser Parameter null ist und LR_DEFAULTSIZE nicht verwendet wird, verwendet die Funktion die tatsächliche Ressourcenhöhe.
[in] fuLoad
Typ: UINT
Dieser Parameter kann einen oder mehrere der folgenden Werte aufweisen.
Rückgabewert
Typ: HANDLE
Wenn die Funktion erfolgreich ist, ist der Rückgabewert das Handle des neu geladenen Images.
Wenn bei der Funktion ein Fehler auftritt, ist der Rückgabewert NULL. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Wenn IS_INTRESOURCE(name) true ist, gibt name den ganzzahligen Bezeichner der angegebenen Ressource an. Andernfalls handelt es sich um einen Zeiger auf eine NULL-Zeichenfolge. Wenn das erste Zeichen der Zeichenfolge ein Pfundzeichen (#) ist, stellen die restlichen Zeichen eine Dezimalzahl dar, die den ganzzahligen Bezeichner der Ressource angibt. Die Zeichenfolge "#258" stellt beispielsweise den Bezeichner 258 dar.
Wenn Sie mit der Verwendung einer Bitmap, eines Cursors oder Symbols fertig sind, die Sie geladen haben, ohne das LR_SHARED-Flag anzugeben, können Sie den zugeordneten Arbeitsspeicher freigeben, indem Sie eine der Funktionen in der folgenden Tabelle aufrufen.
Resource | Release-Funktion |
---|---|
Bitmap | DeleteObject |
Cursor | DestroyCursor |
Symbol | DestroyIcon |
Das System löscht diese Ressourcen automatisch, wenn der Prozess, der sie erstellt hat, beendet wird. Das Aufrufen der entsprechenden Funktion spart jedoch Arbeitsspeicher und verringert die Größe des Arbeitssatzes des Prozesses.
Beispiele
Ein Beispiel finden Sie unter Verwenden von Fensterklassen.
Hinweis
Der winuser.h-Header definiert LoadImage 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-gui-l1-1-0 (eingeführt in Windows 8) |
Siehe auch
Konzept
Andere Ressourcen
Referenz