次の方法で共有


CBitmap::CreateBitmapIndirect

lpBitmapが指す構造体で指定された幅、高さ、および構成がビット (1 バイト) を指定すると、ビットマップを初期化します。

BOOL CreateBitmapIndirect(
   LPBITMAP lpBitmap 
);

パラメーター

  • lpBitmap
    ビットマップ をポイントし、構成するビットマップに関する情報が含まれています。

戻り値

正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

ビットマップは、ディスプレイ デバイスに対して直接選択できないがメモリ デバイス コンテキストの現在のビットマップとして CDC::SelectObject を使用して選択され、互換性のあるデバイス コンテキストに CDC::BitBlt または CDC::StretchBlt 関数を使用してコピーできます。( CDC::PatBlt 関数は、ディスプレイ デバイス コンテキストに現在のブラシのビットマップを直接コピーできます)。

lpBitmap のパラメーターが指す BITMAP の構造が GetObject 関数の使用によって入力された場合、ビットマップのビットを指定していないため、ビットマップは初期化されません。ビットマップを初期化するには、アプリケーションを CreateBitmapIndirectで作成されたビットマップに CGdiObject::GetObject の最初のパラメーターによって識別されるビットマップのビットをコピーするに CDC::BitBlt または SetDIBits のような関数を使用できます。

CreateBitmapIndirect 関数で作成された CBitmap のオブジェクトを使い終わったら、最初にビットマップをデバイス コンテキストから選択して CBitmap のオブジェクトを削除します。

必要条件

ヘッダー: afxwin.h

参照

関連項目

CBitmap クラス

階層図

CDC::SelectObject

CDC::BitBlt

CGdiObject::DeleteObject

CGdiObject::GetObject

CreateBitmapIndirect