イメージ リストの操作

更新 : 2007 年 11 月

Replace メンバ関数は、イメージ リスト (CImageList) のイメージを新しいイメージに置き換えます。この関数は、イメージ リスト オブジェクトのイメージの数を動的に増やす場合にも便利です。SetImageCount 関数は、イメージ リストに格納されているイメージの数を動的に変更します。イメージ リストのサイズを増やす場合は、Replace を呼び出して、新しいイメージ スロットにイメージを追加します。イメージ リストのサイズを減らす場合、新しいサイズを超えたイメージは解放されます。

Remove メンバ関数は、イメージ リストのイメージを削除します。Copy メンバ関数は、イメージ リストのイメージをコピーまたは交換します。この関数では、コピー元イメージをコピー先のインデックスにコピーするか、またはコピー元イメージとコピー先イメージを交換するかを指定できます。

2 つのイメージ リストをマージして新しいイメージを作成するには、Create メンバ関数の適切なオーバーロードを使用します。Create のオーバーロードは、既存のイメージ リストの最初のイメージをマージし、マージ後のイメージを新しいイメージ リスト オブジェクトに格納します。新しいイメージは、最初のイメージの上に 2 番目のイメージを透過的に描画して作成されます。新しいイメージのマスクは、2 つの既存のイメージのマスクのビットに対して論理 OR 演算を実行した結果です。

すべてのイメージがマージされ、新しいイメージ リスト オブジェクトに追加されるまで、上記の操作が繰り返されます。

Write メンバ関数を呼び出してイメージ情報をアーカイブに書き込み、Read メンバ関数を呼び出してこのイメージ情報を読み込むことができます。

GetSafeHandleAttach、および Detach メンバ関数を使用すると、CImageList オブジェクトにアタッチされたイメージ リストのハンドルを操作できます。一方、DeleteImageList メンバ関数は、CImageList オブジェクトを破棄せずにイメージ リストだけを削除します。

参照

概念

コントロール (MFC)

参照

CImageList の使い方