ImageList_LoadImageA関数 (commctrl.h)

指定したビットマップからイメージ リストを作成します。

構文

HIMAGELIST ImageList_LoadImageA(
  HINSTANCE hi,
  LPCSTR    lpbmp,
  int       cx,
  int       cGrow,
  COLORREF  crMask,
  UINT      uType,
  UINT      uFlags
);

パラメーター

hi

種類: HINSTANCE

リソースを含むインスタンスへのハンドル。 ファイルからイメージを読み込む場合、または OEM リソースを読み込む場合、このパラメーターは NULL にすることができます。

lpbmp

型: LPCTSTR

読み込むイメージ。

uFlags パラメーターにLR_LOADFROMFILEが含まれている場合、lpbmp は、読み込むイメージを含むファイルの名前を示す null で終わる文字列のアドレスです。

hi パラメーターが NULL 以外で、LR_LOADFROMFILEが指定されていない場合、lpbmp、hi モジュール内のイメージ リソースの名前を含む null で終わる文字列のアドレスです。

hiNULL で、LR_LOADFROMFILEが指定されていない場合、このパラメーターの LOWORD は、読み込む OEM イメージの識別子である必要があります。 この値を作成するには、WINuser.h で定義されている OEM イメージ識別子の 1 つで MAKEINTRESOURCE マクロを使用します。 これらの識別子には、次のプレフィックスがあります。

意味
OEM ビットマップのOBM_
OEM アイコンのOIC_
OEM カーソルのOCR_

cx

型: int

各イメージの幅。 各イメージの高さと初期イメージ数は、指定されたリソースのディメンションによって推測されます。

cGrow

型: int

システムが新しいイメージ用のスペースを作成する必要があるときにイメージ リストを拡大できるイメージの数。 このパラメーターは、サイズ変更されたイメージ リストに含めることができる新しいイメージの数を表します。

crMask

種類: COLORREF

マスクの生成に使用される色。 指定したビットマップ、カーソル、またはアイコンのこの色の各ピクセルが黒に変更され、マスク内の対応するビットが 1 に設定されます。 このパラメーターがCLR_NONE値の場合、マスクは生成されません。 このパラメーターがCLR_DEFAULT値の場合、画像の左上隅にあるピクセルの色はマスクの色として扱われます。

uType

型: UINT

読み込むイメージの種類を指定するフラグ。 ビットマップが読み込まれていることを示すには、このパラメーターをIMAGE_BITMAPする必要があります。

ImageList_LoadImage は、ビットマップ ファイルでのみ使用されます。 その他の種類のイメージはサポートされていません。
 
意味
IMAGE_BITMAP
ビットマップを読み込みます。

uFlags

型: UINT

イメージの読み込み方法を指定するフラグ。 このパラメーターは、次の値と組み合わせて使用できます。

意味
LR_CREATEDIBSECTION
uType パラメーターでIMAGE_BITMAPを指定すると、互換性のあるビットマップではなく DIB セクション ビットマップが関数から返されます。 LR_CREATEDIBSECTIONは、ビットマップをディスプレイ デバイスの色にマッピングせずに読み込む場合に便利です。
LR_DEFAULTCOLOR
表示の色形式を使用します。
LR_DEFAULTSIZE
cx パラメーターが 0 に設定されている場合は、カーソルとアイコンのシステム メトリック値で指定された幅または高さを使用します。 この値が指定されておらず 、cx が 0 に設定されている場合、関数はサイズをリソースで指定されたサイズに設定します。 リソースに複数のイメージが含まれている場合、関数はサイズを最初のイメージのサイズに設定します。
LR_LOADFROMFILE
lpbmp パラメーターで指定されたファイルからイメージを読み込みます。
LR_LOADMAP3DCOLORS
カラー テーブルで画像を検索し、次の灰色の網掛けを対応する 3 次元カラーに置き換えます。

Dk Gray: RGB(128, 128, 128)COLOR_3DSHADOW

灰色: RGB(192, 192, 192)COLOR_3DFACE

Lt Gray: RGB(223, 223, 223)COLOR_3DLIGHT

詳細については、「解説」を参照してください。

LR_LOADTRANSPARENT
画像の最初のピクセルの色値を取得し、カラー テーブル内の対応するエントリを既定のウィンドウの色 (COLOR_WINDOW表示色) に置き換えます。 その色を使用するイメージ内のすべてのピクセルが、既定のウィンドウ値の色になります。 この値は、対応するカラー テーブルを持つイメージにのみ適用されます。 詳細については、「解説」を参照してください。
LR_MONOCHROME
イメージを白黒で読み込みます。
LR_SHARED
イメージが複数回読み込まれる場合は、イメージ ハンドルを共有します。 この値は、読み込み後に変更される可能性がある非伝統的なサイズのイメージや、ファイルから読み込まれたイメージには使用しないでください。

戻り値

種類: HIMAGELIST

成功した場合はイメージ リストへのハンドルを返し、それ以外の場合は NULL を 返します。

解説

LR_LOADTRANSPARENTでは、イメージが透過的に読み込まれません。 すべての背景ピクセルがCOLOR_WINDOWに変更されているため、透明にのみ表示される不透明な画像リストが作成されます。 COLOR_WINDOW色ではない背景の上に画像が描画されている場合、イメージは正しく描画されません。 また、LR_LOADTRANSPARENTとLR_LOADMAP3DCOLORSは、ImageList_LoadImageが呼び 出された時点 で有効だったシステム カラーを使用します。 システムの色が後で変更された場合、アプリケーションはイメージを再読み込みして色を再マップする必要があります。

Note

commctrl.h ヘッダーは、ImageList_LoadImageをエイリアスとして定義します。これは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー commctrl.h
Library Comctl32.lib
[DLL] Comctl32.dll

関連項目

Loadimage