LoadIconMetric 関数 (commctrl.h)
クライアント指定のシステム メトリックを使用して、指定されたアイコン リソースを読み込みます。
構文
HRESULT LoadIconMetric(
[in] HINSTANCE hinst,
[in] PCWSTR pszName,
[in] int lims,
[out] HICON *phico
);
パラメーター
[in] hinst
種類: HINSTANCE
読み込まれるアイコンを含む DLL または実行可能ファイル (.exe) のいずれかのモジュールへのハンドル。 詳細については、「 GetModuleHandle」を参照してください。
定義済みのシステム アイコンまたはスタンドアロン アイコン ファイルを読み込むには、このパラメーターを NULL に設定 します。
[in] pszName
種類: PCWSTR
読み込むアイコンに関する位置情報を含む、null で終わる Unicode バッファーへのポインター。
hinst が NULL 以外の場合、pszName はアイコン リソースを名前または序数で指定します。 この序数は 、MAKEINTRESOURCE マクロを使用してパッケージ化する必要があります。
hinst が NULL の場合、pszName は読み込む定義済みのシステム アイコンの識別子 (IDI_ プレフィックスで始まる) を指定します。
[in] lims
型: int
目的のメトリック。 次のいずれかの値です。
[値] | 意味 |
---|---|
|
小さいアイコンの推奨ピクセル幅である SM_CXSMICONに対応します。 |
|
アイコンの既定のピクセル幅である SM_CXICONに対応します。 |
[out] phico
種類: HICON*
この関数が戻るとき、 には、読み込まれたアイコンのハンドルへのポインターが含まれます。
戻り値
種類: HRESULT
成功した場合はS_OKを返します。それ以外の場合は、次の値を含むエラーを返します。
リターン コード | 説明 |
---|---|
|
pszName が指すバッファーの内容は、予期される解釈のいずれにも適合しません。 |
注釈
LoadIconMetric は LoadIcon に似ていますが、アイコン メトリックを指定する機能があります。 呼び出し元のアプリケーションが高品質のアイコンを確保する必要がある場合は、 LoadIcon の代わりに使用されます。 これは、1 インチあたりの高ドット数 (dpi) の状況で特に便利です。
アイコンは、次のように抽出または作成されます。
- リソース内で正確なサイズの一致が見つかった場合は、そのアイコンが使用されます。
- 正確に一致するサイズが見つかり、大きなアイコンを使用できる場合は、大きなバージョンを目的のサイズにスケールダウンすることで新しいアイコンが作成されます。
- 正確なサイズの一致が見つかっず、大きなアイコンが使用できない場合は、小さいアイコンを目的のサイズまでスケーリングすることで、新しいアイコンが作成されます。
NOTIFYICONDATA nidIconData = {0};
nidIconData.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_ICON));
// Or...
HRESULT hr = LoadIconMetric(hInstance, MAKEINTRESOURCE(IDI_ICON), LIM_SMALL, &nidIconData.hIcon);
アプリケーションは、取得したアイコンで DestroyIcon を呼び出す役割を担います。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | commctrl.h |
Library | Comctl32.lib |
[DLL] | Comctl32.dll |