淡色表示 (灰色) ビットマップ関数とディザリングされたビットマップ関数

淡色表示 (灰色) ビットマップ関数

MFC には、ビットマップのコントロールが無効になっていることを示すための 2 つの関数が用意されています。

Comparison of gray and original icon versions.

名前 説明
AfxDrawGrayBitmap 灰色のバージョンのビットマップを描画します。
AfxGetGrayBitmap 灰色のバージョンのビットマップをコピーします。

淡色表示 (灰色) ビットマップ関数

MFC には、ビットマップの背景をディザリングされたパターンに置き換える 2 つの関数も用意されています。

Comparison of dithered and original icon versions.

名前 説明
AfxDrawDitheredBitmap 背景がディザリングされたビットマップを描画します。
AfxGetDitheredBitmap 背景がディザリングされたビットマップをコピーします。

AfxDrawGrayBitmap

灰色のバージョンのビットマップを描画します。

void AFXAPI AfxDrawGrayBitmap(
    CDC* pDC,
    int x,
    int y,
    const CBitmap& rSrc,
    COLORREF crBackground);

パラメーター

pDC
宛先 DC を示します。

x
宛先の x 座標。

y
宛先の y 座標。

rSrc
元のビットマップ。

crBackground
新しい背景色 (通常は COLOR_MENU などの灰色)。

解説

AfxDrawGrayBitmap で描画されるビットマップの外観は、無効なコントロールになります。

Comparison of gray and original icon versions.

void CDCView::DrawGrayBitmap(CDC* pDC)
{
   CBitmap bm;
   bm.LoadBitmap(IDB_BITMAP1);
   AfxDrawGrayBitmap(pDC, 10, 50, bm, GetSysColor(COLOR_MENU));
}

必要条件

ヘッダー: afxwin.h

AfxGetGrayBitmap

灰色のバージョンのビットマップをコピーします。

void AFXAPI AfxGetGrayBitmap(
    const CBitmap& rSrc,
    CBitmap* pDest,
    COLORREF crBackground);

パラメーター

rSrc
元のビットマップ。

pDest
コピー先のビットマップ。

crBackground
新しい背景色 (通常は COLOR_MENU などの灰色)。

解説

AfxGetGrayBitmap でコピーされるビットマップの外観は、無効なコントロールのようになります。

Comparison of gray and original icon versions.

CBitmap bm;
bm.LoadBitmap(IDB_BITMAP1);
CBitmap bmGray;
AfxGetGrayBitmap(bm, &bmGray, GetSysColor(COLOR_MENU));

必要条件

ヘッダー: afxwin.h

AfxDrawDitheredBitmap

ビットマップを描画し、背景をディザリング (チェックer) パターンに置き換えます。

void AFXAPI AfxDrawDitheredBitmap(
    CDC* pDC,
    int x,
    int y,
    const CBitmap& rSrc,
    COLORREF cr1  ,
    COLORREF cr2);

パラメーター

pDC
宛先 DC を示します。

x
宛先の x 座標。

y
宛先の y 座標。

rSrc
元のビットマップ。

cr1
2 つのディザ カラーの 1 つ (通常は白)。

cr2
もう 1 つのディザ カラー (通常は薄い灰色 (COLOR_MENU)。

解説

ソース ビットマップは、ビットマップの背景を置き換える 2 色 (cr1cr2) チェックパターンで宛先 DC に描画されます。 ソース ビットマップの背景は、その白いピクセルと、ビットマップの左上隅のピクセルの色に一致するすべてのピクセルとして定義されます。

Comparison of dithered and original icon versions.

void CDCView::DrawDitheredBitmap(CDC* pDC)
{
   CBitmap bm;
   bm.LoadBitmap(IDB_BITMAP1);
   AfxDrawDitheredBitmap(pDC, 10, 50, bm, RGB(255, 255, 255),
      GetSysColor(COLOR_BTNFACE));
}

必要条件

ヘッダー: afxwin.h

AfxGetDitheredBitmap

ビットマップをコピーし、背景をディザリング (チェックer) パターンに置き換えます。

void AFXAPI AfxGetDitheredBitmap(
    const CBitmap& rSrc,
    CBitmap* pDest,
    COLORREF cr1  ,
    COLORREF cr2);

パラメーター

rSrc
元のビットマップ。

pDest
コピー先のビットマップ。

cr1
2 つのディザ カラーの 1 つ (通常は白)。

cr2
もう 1 つのディザ カラー (通常は薄い灰色 (COLOR_MENU)。

解説

ソース ビットマップは、ソース ビットマップの背景を置き換える 2 色 (cr1cr2) チェックパターンでコピー先ビットマップにコピーされます。 ソース ビットマップの背景は、その白いピクセルと、ビットマップの左上隅のピクセルの色に一致するすべてのピクセルとして定義されます。

Comparison of dithered and original icon versions.

CBitmap bm;
bm.LoadBitmap(IDB_BITMAP1);
CBitmap bmDith;
AfxGetDitheredBitmap(bm, &bmDith, RGB(255, 255, 255),
   GetSysColor(COLOR_BTNFACE));

必要条件

ヘッダー: afxwin.h

関連項目

マクロとグローバル