パラメータ
hinst
[入力]ロードするイメージが入ったモジュールのインスタンスのハンドルを指定する。
OEM イメージをロードするときは、0 を指定する。
lpszName
[入力]ロードするイメージを指定する。hinst パラメータが NULL 以外で、かつ、fuLoad パラメータが
LR_LOADFROMFILE の値を含
んでいないときは、hinst モジュール内のイメージリソースとして認識される。
イメージリソースを名前でロードするときは、その名前が入った NULL で終わる文字列へのポインタを指定する。
イメージリソースを序数でロードするときは、MAKEINTRESOURCE マクロを使ってイメージの序数をこの関数に渡すことができる形式に変換
し、このパラメータに指定する。
hinst パラメータが NULL で、かつ、fuLoad パラメータが LR_LOADFROMFILE
の値を含んでいないときは、ロード対象の OEM イメー
ジとして認識される。OEM イメージの識別子は Winuser.h で定義され、次のプリフィックスが付いている。
プリフィックス
|
意味
|
OBM_ OEM |
ビットマップ |
OIC_ OEM |
アイコン |
OCR_ OEM |
カーソル |
これらの定数を LoadImage 関数に渡すときは、MAKEINTRESOURCE マクロを使う。
たとえば、OCR_NORMAL カーソルをロードするときは、lpszName パラメータとして
MAKEINTRESOURCE(OCR_NORMAL) を渡し、
hinst パラメータとして NULL を渡す。
fuLoad パラメータに LR_LOADFROMFILE の値が含まれていると、lpszName
は、イメージが入っているファイルの名前と認識される。
uType
[入力]ロードするイメージのタイプを指定する。次のいずれかの値を指定する。
値
|
意味
|
IMAGE_BITMAP |
ビットマップをロードする。 |
IMAGE_CURSOR |
カーソルをロードする。 |
IMAGE_ICON |
アイコンをロードする。 |
cxDesired
[入力]アイコンまたはカーソルの幅をピクセル単位で指定する。
このパラメータに 0 を指定し、fuLoad パラメータに LR_DEFAULTSIZE を指定すると、システムメトリック値の SM_CXICON
または
SM_CXCURSOR を使って幅が設定される。
このパラメータに 0 を指定し、fuLoad パラメータで LR_DEFAULTSIZE を指定しないと、リソースの実際の幅が使われる。
cyDesired
[入力]アイコンまたはカーソルの高さをピクセル単位で指定する。
このパラメータに 0 を指定し、fuLoad パラメータに LR_DEFAULTSIZE を指定すると、システムメトリック値の SM_CYICON
または
SM_CYCURSOR を使って高さが設定される。このパラメータに 0 を指定し、fuLoad パラメータに LR_DEFAULTSIZE
を指定しないと、リ
ソースの実際の高さが使われる。
fuLoad
[入力]次の 1 つ以上の値を指定する。
値
|
意味
|
LR_DEFAULTCOLOR |
既定のフラグである。何もしない。「LR_MONOCHROME ではない」ということを意味するだけである。 |
LR_CREATEDIBSECTION
|
uType パラメータに IMAGE_BITMAP を指定すると、互換性のあるビットマップではなく DIB セクションビッ
トマップが返る。このフラグは、ビットマップを表示デバイスの色にマップすることなくロードする場合に便利で
ある。
|
LR_DEFAULTSIZE
|
cxDesired または cyDesired を 0 に設定すると、カーソルまたはアイコンのシステムメトリック値によって指定
される幅または高さが使われる。このフラグを指定せず、cxDesired と cyDesired を 0 に設定すると、リソー
スの実際のサイズが使われる。リソースに複数のイメージが含まれている場合は、最初のイメージのサイズが使われる。
|
LR_LOADFROMFILE
|
lpszName パラメータで指定するファイルからイメージをロードする。このフラグを指定しないと、lpszName
はりソースの名前として認識される。
|
LR_LOADMAP3DCOLORS |
イメージのカラーテーブルを検索し、次に示す灰色の濃淡を対応する 3D カラーに置き換える。 |
|
色
|
置き換え後の 3D カラー |
|
ダークグレー、RGB(128,128,128) |
COLOR_3DSHADOW |
|
グレー、RGB(192,192,192) |
COLOR_3DFACE |
|
ライトグレー、RGB(223,223,223) |
COLOR_3DLIGHT |
|
8bpp より濃い色のビットマップをロードする場合は、このオプションを使わないこと。 |
LR_LOADTRANSPARENT
|
イメージ内の最初のピクセルのカラー値を取得し、カラーテーブル内の対応するエントリを既定のウィンドウカラ
ー
(COLOR_WINDOW)に置き換える。そのエントリを使うイメージ内のすべてのピクセルが既定のウィン
ドウカラーになる。この値は対応するカラーテーブルを持つイメージだけに適用される。
8bpp より濃い色のビットマップをロードする場合は、このオプションを使わないこと。
fuLoad に LR_LOADTRANSPARENT と LR_LOADMAP3DCOLORS の両方を指定した場合は、
LRLOADTRANSPARENT が優先される。しかし、カラーテーブルエントリは、COLOR_WINDOW でな
く、COLOR_3DFACE に置き換えられる。
|
LR_MONOCHROME |
イメージをモノクロでロードする。 |
LR_SHARED
|
イメージを 2 回以上ロードする場合に、同じハンドルを使う。LR_SHARED を設定しない場合、LoadImage
を呼び出して同じリソースをもう一度ロードすると、最初とは異なるハンドルが返る。
このフラグを使った場合、不要になったりソースはシステムによって破棄される。
標準的でないサイズのイメージ、ロード後に変化する可能性があるイメージ、ファイルからロードされるイメージ
には、このオプションを使わないこと。
Windows 95/98:希望したサイズに関係なく、キャッシュ内にある指定したリソース名の最初のイメージがロ
ードされる。 |
LR_VGACOLOR |
VGA フルカラー(True Color)を使う。 |
戻り値
関数が成功すると、ロードされたイメージのハンドルが返る。
関数が失敗すると、NULL が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。 |