IMAGELISTDRAWPARAMS 構造体 (commctrl.h)

イメージ リストの描画操作に関する情報が含まれており、 IImageList::D raw 関数で使用されます。

構文

typedef struct _IMAGELISTDRAWPARAMS {
  DWORD      cbSize;
  HIMAGELIST himl;
  int        i;
  HDC        hdcDst;
  int        x;
  int        y;
  int        cx;
  int        cy;
  int        xBitmap;
  int        yBitmap;
  COLORREF   rgbBk;
  COLORREF   rgbFg;
  UINT       fStyle;
  DWORD      dwRop;
  DWORD      fState;
  DWORD      Frame;
  COLORREF   crEffect;
} IMAGELISTDRAWPARAMS, *LPIMAGELISTDRAWPARAMS;

メンバー

cbSize

種類: DWORD

この構造体のサイズ (バイト単位)。

himl

種類: HIMAGELIST

描画するイメージを含むイメージ リストへのハンドル。

i

型: int

描画するイメージの 0 から始まるインデックス。

hdcDst

種類: HDC

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

x

型: int

イメージを描画する場所を指定する x 座標。

y

型: int

イメージを描画する場所を指定する y 座標。

cx

型: int

xBitmapyBitmap で指定された描画操作の左上隅を基準にして、描画するピクセル数を指定する値。 cxcy が 0 の場合、Draw は有効なセクション全体を描画します。 メソッドは、パラメーターが有効であることを保証しません。

cy

型: int

xBitmapyBitmap で指定された描画操作の左上隅を基準にして、描画するピクセル数を指定する値。 cxcy が 0 の場合、Draw は有効なセクション全体を描画します。 メソッドは、パラメーターが有効であることを保証しません。

xBitmap

型: int

イメージ自体を参照する描画操作の左上隅を指定する x 座標。 xBitmap 以降の yBitmap の左側にある画像のピクセルは表示されません。

yBitmap

型: int

画像自体を参照する描画操作の左上隅を指定する y 座標。 xBitmap 以降の yBitmap の左側にある画像のピクセルは表示されません。

rgbBk

種類: COLORREF

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

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

rgbFg

種類: COLORREF

画像の前景色。 このメンバーは、 fStyleILD_BLEND25 または ILD_BLEND50 フラグ 含まれている場合にのみ使用されます。 このパラメーターには、アプリケーション定義の RGB 値または次のいずれかの値を指定できます。

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

fStyle

型: UINT

描画スタイルと、必要に応じてオーバーレイ イメージを指定するフラグ。 オーバーレイ イメージの詳細については、このトピックの最後にあるコメント セクションを参照してください。 このメンバーには、1 つ以上の イメージ リスト描画フラグを含めることができます。

dwRop

種類: DWORD

ラスター演算コードを指定する値。 これらのコードは、ソース四角形の色データを、最終的な色を実現するために変換先の四角形の色データと組み合わせる方法を定義します。 fStyleILD_ROP フラグが含まれていない場合、このメンバーは無視されます。 一般的なラスター演算コードには、次のようなものがあります。

意味
暗闇
物理パレットのインデックス 0 に関連付けられた色を使用して、移動先の四角形を塗りつぶします。 この色は、既定の物理パレットの場合は黒です。
DSTINVERT
変換先の四角形を反転します。
MERGECOPY
ブール値 AND 演算子を使用して、ソースの四角形の色を指定したパターンにマージします。
MERGEPAINT
Boolean OR 演算子を使用して、反転元の四角形の色を変換先の四角形の色とマージします。
NOTSRCCOPY
反転元の四角形をコピー先にコピーします。
NOTSRCERASE
Boolean OR 演算子を使用して、変換元とコピー先の四角形の色を結合します。 結果の色を反転します。
PATCOPY
指定したパターンをコピー先のビットマップにコピーします。
PATINVERT
ブール 値 XOR 演算子を使用して、指定したパターンの色と変換先の四角形の色を組み合わせます。
PATPAINT
パターンの色と反転されたソース四角形の色を組み合わせ、ブール 値 OR 演算子を使用して結果を変換先の四角形の色と組み合わせます。
SRCAND
Boolean AND 演算子を使用して、変換元とコピー先の四角形の色を結合します。
SRCCOPY
コピー元の四角形をコピー先の四角形に直接コピーします。
SRCERASE
Boolean AND 演算子を使用して、変換先の四角形の反転色とソース四角形の色を組み合わせます。
SRCINVERT
Boolean XOR 演算子を使用して、変換元とコピー先の四角形の色を結合します。
SRCPAINT
Boolean OR 演算子を使用して、変換元とコピー先の四角形の色を結合します。
物理パレットのインデックス 1 に関連付けられた色を使用して、移動先の四角形を塗りつぶします。 この色は、既定の物理パレットでは白です。

fState

型: DWORD

描画状態を指定するフラグ。 このメンバーには、1 つ以上の イメージ リスト状態フラグを含めることができます。 このメンバーを使用するにはcomctl32.dllバージョン 6 を使用する必要があります。 解説を参照してください。

Frame

型: DWORD

アルファ ブレンド効果と共に使用されます。

ILS_ALPHAと共に使用すると、このメンバーはアルファ チャネルの値を保持します。 この値には 0 から 255 の値を指定できます。0 は完全に透明で、255 は完全に不透明です。

このメンバーを使用するにはcomctl32.dllバージョン 6 を使用する必要があります。 解説を参照してください。

crEffect

型: DWORD

光彩の効果に使用される色。 このメンバーを使用するにはcomctl32.dllバージョン 6 を使用する必要があります。 解説を参照してください。

解説

オーバーレイ イメージは、この構造体の i メンバーで指定されたプライマリ イメージの上に描画されるイメージです。 オーバーレイ イメージを指定するには、ビットごとの OR 演算子を使用して fStyleINDEXTOOVERLAYMASK マクロを組み合わせ、マクロ内のオーバーレイ イメージの 1 から始まるインデックスを渡します。 このイメージは、 ImageList_SetOverlayImage API を使用してオーバーレイ イメージとして以前に指定されている必要があります。

fStyle からオーバーレイ イメージを抽出するには、ビットごとの AND 演算子を使用して fStyleILD_OVERLAYMASK値でマスクします。

バージョン 6 Comctl32.dll再頒布可能ではありません。. バージョン 6 Comctl32.dll使用するには、マニフェストで指定する必要があります。 マニフェストの詳細については、「 ビジュアル スタイルの有効化」を参照してください。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ]
Header commctrl.h (Commctrl.h を含む)