LoadIconMetric-Funktion (commctrl.h)
Lädt eine angegebene Symbolressource mit einer vom Client angegebenen Systemmetrik.
Syntax
HRESULT LoadIconMetric(
[in] HINSTANCE hinst,
[in] PCWSTR pszName,
[in] int lims,
[out] HICON *phico
);
Parameter
[in] hinst
Typ: HINSTANCE
Ein Handle für das Modul einer DLL- oder ausführbaren Datei (.exe), die das zu ladende Symbol enthält. Weitere Informationen finden Sie unter GetModuleHandle.
Um ein vordefiniertes Systemsymbol oder eine eigenständige Symboldatei zu laden, legen Sie diesen Parameter auf NULL fest.
[in] pszName
Typ: PCWSTR
Ein Zeiger auf einen Unicode-Puffer mit NULL-Beendigung, der Standortinformationen zum zu ladenden Symbol enthält.
Wenn hinst nicht NULL ist, gibt pszName die Symbolressource entweder anhand des Namens oder der Ordnungszahl an. Diese Ordnungszahl muss mithilfe des MAKEINTRESOURCE-Makros verpackt werden.
Wenn hinstNULL ist, gibt pszName entweder den Namen einer eigenständigen Symboldatei (.ico) oder den Bezeichner (beginnend mit dem präfix IDI_) eines vordefinierten Systemsymbols an, das geladen werden soll.
[in] lims
Typ: int
Die gewünschte Metrik. Einer der folgenden Werte:
Wert | Bedeutung |
---|---|
|
Entspricht SM_CXSMICON, der empfohlenen Pixelbreite eines kleinen Symbols. |
|
Entspricht SM_CXICON, der Standardpixelbreite eines Symbols. |
[out] phico
Typ: HICON*
Wenn diese Funktion zurückgibt, enthält einen Zeiger auf das Handle des geladenen Symbols.
Rückgabewert
Typ: HRESULT
Gibt bei erfolgreicher Ausführung S_OK zurück, andernfalls ein Fehler, einschließlich des folgenden Werts.
Rückgabecode | Beschreibung |
---|---|
|
Der Inhalt des Puffers, auf den pszName verweist, passt nicht zu den erwarteten Interpretationen. |
Hinweise
LoadIconMetric ähnelt LoadIcon, verfügt aber über die Möglichkeit, die Symbolmetrik anzugeben. Es wird anstelle von LoadIcon verwendet, wenn die aufrufende Anwendung ein hochwertiges Symbol sicherstellen möchte. Dies ist besonders in Situationen mit hohen Dpi-Werten (Dots per Inch) nützlich.
Symbole werden wie folgt extrahiert oder erstellt.
- Wenn eine genaue Größengleichung in der Ressource gefunden wird, wird dieses Symbol verwendet.
- Wenn eine genaue Größenabgleichung nicht gefunden werden kann und ein größeres Symbol verfügbar ist, wird ein neues Symbol erstellt, indem die größere Version auf die gewünschte Größe herunterskaliert wird.
- Wenn keine genaue Größeneinstimmung gefunden werden kann und kein größeres Symbol verfügbar ist, wird ein neues Symbol erstellt, indem ein kleineres Symbol auf die gewünschte Größe skaliert wird.
NOTIFYICONDATA nidIconData = {0};
nidIconData.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICON));
// Or...
HRESULT hr = LoadIconMetric(hInstance, MAKEINTRESOURCE(IDI_ICON), LIM_SMALL, &nidIconData.hIcon);
Die Anwendung ist für den Aufruf von DestroyIcon auf dem abgerufenen Symbol verantwortlich.
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | commctrl.h |
Bibliothek | Comctl32.lib |
DLL | Comctl32.dll |
Feedback
Feedback senden und anzeigen für