CImageList::DrawIndirect
イメージ リストのイメージを描画するために、このメンバー関数を呼び出します。
BOOL DrawIndirect(
IMAGELISTDRAWPARAMS* pimldp
);
BOOL DrawIndirect(
CDC* pDC,
int nImage,
POINT pt,
SIZE sz,
POINT ptOrigin,
UINT fStyle = ILD_NORMAL,
DWORD dwRop = SRCCOPY,
COLORREF rgbBack = CLR_DEFAULT,
COLORREF rgbFore = CLR_DEFAULT,
DWORD fState = ILS_NORMAL,
DWORD Frame = 0,
COLORREF crEffect = CLR_DEFAULT
);
パラメーター
pimldp
描画操作に関する情報を含む IMAGELISTDRAWPARAMS の構造体へのポインター。pDC
コピー先のデバイス コンテキストへのポインター。とすると CDC でこのオブジェクトを削除する必要があります。nImage
描画するイメージのインデックス。pt
イメージが描画される x 軸および y-座標を含む構造体の [ポイント]。sz
描画するイメージのサイズを示す構造の サイズ変更。ptOrigin
イメージに関連する描画操作の左上隅指定した x 座標と y 座標を含む構造体を [ポイント] の。の左側に x 座標と y 座標の上部にあるイメージのピクセルを描画します。fStyle
描画スタイル、およびオプションで、オーバーレイ イメージを指定することを表すフラグです。オーバーレイ イメージの詳細については、"解説"を参照してください。MFC の既定の実装は、ILD_NORMALイメージ リストの背景色を使用して、イメージを描画します。背景色が CLR_NONE の値の場合、イメージはマスクを使用して透過的に描画します。他の有効なスタイルは IMAGELISTDRAWPARAMS の構造体の fStyle のメンバーの下で説明します。
dwRop
ラスター オペレーション コードを指定する値。これらのコードは最終的な色を達成するために元の四角形の色データをコピー先の四角形の色データを結合する方法を定義します。MFC の既定の実装は、SRCCOPY先の四角形に、元の四角形を直接コピーします。このパラメーターは fStyle のパラメーターは ILD_ROP のフラグを含める無視されます。他の値は IMAGELISTDRAWPARAMS の構造体の dwRop のメンバーの下で説明します。
rgbBack
イメージの背景色、既定では、CLR_DEFAULT。このパラメーターには、次の値をアプリケーション定義の RGB 値または 1 のいずれかです:値
説明
CLR_DEFAULT
既定の背景色。イメージは、イメージ リストの背景色を使用して描画します。
CLR_NONE
背景色はありません。イメージは透過的に描画します。
rgbFore
イメージの前景色、既定では、CLR_DEFAULT。このパラメーターには、次の値をアプリケーション定義の RGB 値または 1 のいずれかです:値
説明
CLR_DEFAULT
既定の前景色。イメージは、前景色としてシステムの強調表示色を使用して描画します。
CLR_NONE
Expression Blend なし。イメージは先のデバイス コンテキストの色とブレンドされます。
このパラメーターは fStyle が ILD_BLEND25 または ILD_BLEND50 のフラグが含まれている場合にのみ使用されます。
fState
描画の状態を指定するフラグ。このメンバーは一つ以上のイメージ リストの状態のフラグを含めることができます。フレーム
動作の飽和とアルファ ブレンドの効果に影響します。ILS_SATURATEを使用すると、このメンバーはアイコンの各ピクセルの色の RGB 三各コンポーネントに追加された値を保持します。
ILS_APLHAを使用すると、このメンバーは、アルファ チャネルの値を保持します。この値は、完全に不透明である 255 0 から完全に透明で 0 は 255 から、のいずれかです。
crEffect
外縁にグローとシャドウ効果に使用する COLORREF の値。
戻り値
イメージが正常に描画**[真]** ; それ FALSE。
解説
独自 Win32 構造体を表示する場合は、最初のバージョンを使用します。MFC の既定の一つ以上の引数を使用する場合は、を使用します。または構造体を管理することは避けてください。2 番目のバージョンは。
オーバーレイ イメージがプライマリ イメージの上に描画されます nImage のパラメーターでこのメンバー関数で指定されるイメージです。INDEXTOOVERLAYMASK のマクロによって指定されるオーバーレイ マスクの 1 から始まるインデックスで [描画] のメンバー関数を使用して、オーバーレイのマスクを描画します。
使用例
int i, dx, cx, cy, nCount = m_myImageList.GetImageCount();
::ImageList_GetIconSize(m_myImageList, &cx, &cy);
// Draw the images of the image list on the DC.
for (dx = 0, i = 0; i < nCount; i++)
{
m_myImageList.DrawIndirect(&dc, i, CPoint(dx, 0),
CSize(cx, cy), CPoint(0, 0));
dx += cx;
}
必要条件
ヘッダー: afxcmn.h