CBitmap::CreateBitmapIndirect
更新 : 2007 年 11 月
lpBitmap で指定された構造体に与えられた幅、高さ、ビット パターン (指定されている場合) を持つビットマップを初期化します。
BOOL CreateBitmapIndirect(
LPBITMAP lpBitmap
);
パラメータ
- lpBitmap
ビットマップについての情報を持つ BITMAP 構造体へのポインタ。
戻り値
正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。
解説
このビットマップは、ディスプレイ デバイスのビットマップとして直接選択することはできませんが、CDC::SelectObject を使ってメモリ デバイス コンテキストの現在のビットマップとして選択できます。さらに、CDC::BitBlt 関数または CDC::StretchBlt 関数を使って互換性のある任意のデバイス コンテキストにコピーできます。CDC::PatBlt 関数は、現在のブラシのビットマップを直接ディスプレイ デバイス コンテキストにコピーできます。
パラメータ lpBitmap で指定される BITMAP 構造体が、GetObject 関数を使って設定される場合は、ビットマップのビット列は指定されず、ビットマップは初期化されません。このビットマップを初期化するには、アプリケーションで CDC::BitBlt、SetDIBits などの関数を使用して、CGdiObject::GetObject の最初のパラメータで識別されるビットマップのビット列を CreateBitmapIndirect で作成されたビットマップにコピーします。
CreateBitmapIndirect 関数によって作成された CBitmap オブジェクトの処理を終了したら、まずデバイス コンテキストからビットマップの選択を外し、次に CBitmap オブジェクトを削除します。
必要条件
ヘッダー : afxwin.h