ImageList_DrawEx関数 (commctrl.h)

指定したデバイス コンテキストで画像リスト項目を描画します。 関数は、指定した描画スタイルを使用し、指定した色でイメージをブレンドします。

構文

BOOL ImageList_DrawEx(
  HIMAGELIST himl,
  int        i,
  HDC        hdcDst,
  int        x,
  int        y,
  int        dx,
  int        dy,
  COLORREF   rgbBk,
  COLORREF   rgbFg,
  UINT       fStyle
);

パラメーター

himl

種類: HIMAGELIST

イメージ リストへのハンドル

i

型: int

描画するイメージのインデックス。

hdcDst

種類: HDC

ターゲット デバイス コンテキストのハンドル。

x

型: int

指定したデバイス コンテキスト内で描画する x 座標。

y

型: int

指定したデバイス コンテキスト内で描画する y 座標。

dx

型: int

画像の左上隅を基準にして描画する画像の部分の幅。 dxdy が 0 の場合、関数はイメージ全体を描画します。 関数は、パラメーターが有効であることを確認しません。

dy

型: int

画像の左上隅を基準にして、描画する画像の部分の高さ。 dxdy が 0 の場合、関数はイメージ全体を描画します。 関数は、パラメーターが有効であることを確認しません。

rgbBk

種類: COLORREF

イメージの背景色。 このパラメーターには、アプリケーション定義の RGB 値、または次のいずれかの値を指定できます。

意味
CLR_NONE
背景色なし。 イメージは透過的に描画されます。
CLR_DEFAULT
既定の背景色。 イメージは、イメージ リストの背景色を使用して描画されます。

rgbFg

種類: COLORREF

イメージの前景色。 このパラメーターには、アプリケーション定義の RGB 値、または次のいずれかの値を指定できます。

意味
CLR_NONE
ブレンド色なし。 イメージは、ターゲット デバイス コンテキストの色とブレンドされます。
CLR_DEFAULT
既定の前景色。 イメージは、システムの強調表示色を前景色として使用して描画されます。

fStyle

型: UINT

描画スタイルと、必要に応じてオーバーレイ イメージ。 オーバーレイイメージインデックスの指定については、このトピックの最後にあるコメントセクションを参照してください。 このパラメーターには、オーバーレイ イメージ インデックスと、次の 1 つ以上の値を組み合わせて使用できます。

意味
ILD_BLEND
ILD_BLEND25
画像を描画し、 rgbFg で指定されたブレンド色で 25% ブレンドします。 イメージ リストにマスクが含まれていない場合、この値は無効です。
ILD_BLEND50
画像を描画し、 rgbFg で指定されたブレンド色で 50% ブレンドします。 イメージ リストにマスクが含まれていない場合、この値は無効です。
ILD_FOCUS
ILD_IMAGE
オーバーレイでマスクを描画する必要がない場合は、このフラグを設定します。 このフラグにより、 ImageList_DrawEx はイメージのみを描画し、マスクを無視します。
ILD_MASK
マスクを描画します。
ILD_NORMAL
イメージ リストの背景色を使用してイメージを描画します。 背景色がCLR_NONE値の場合、イメージはマスクを使用して透明に描画されます。
ILD_SELECTED
ILD_TRANSPARENT
背景色に関係なく、マスクを使用してイメージを透明に描画します。 イメージ リストにマスクが含まれていない場合、この値は無効です。

戻り値

種類: BOOL

成功した場合は 0 以外、それ以外の場合は 0 を返します。

解説

オーバーレイ イメージは、 i パラメーターで指定されたプライマリ イメージの上に透過的に描画されます。 fStyle パラメーターでオーバーレイ イメージを指定するには、INDEXTOOVERLAYMASK マクロを使用して、オーバーレイ イメージの 1 から始まるインデックスをシフトします。 OR 演算子を使用して、マクロの戻り値を fStyle パラメーターで指定された描画スタイル フラグと論理的に組み合わせます。 最初に 、ImageList_SetOverlayImage 関数を使用して、このイメージをオーバーレイ イメージとして指定する必要があります。

要件

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