古詩詞大全網 - 古詩大全 - MFC中如何載入bmp和jpeg格式的,並作為文件背景

MFC中如何載入bmp和jpeg格式的,並作為文件背景

步驟壹:導入bmp文件:

第二步:設置為背景:

①?添加OnCtlColor消息響應函數:

②?添加響應代碼:

HBRUSH?CMyDlg::OnCtlColor(CDC*?pDC,?CWnd*?pWnd,?UINT?nCtlColor)?

{

HBRUSH?hbr?=?CDialog::OnCtlColor(pDC,?pWnd,?nCtlColor);

//?TODO:?Change?any?attributes?of?the?DC?here

static?CBrush?gBr;

static?bool?isInited?=?false;

if(!isInited)

{

CBitmap?bitmap;

bitmap.LoadBitmap(IDB_BITMAP1);

gBr.CreatePatternBrush(&bitmap);

COLORREF?clearColor?=?-1;

bitmap.DeleteObject();

isInited?=?true;

}

if(pWnd==this)

{

pDC->SetBkMode(TRANSPARENT);

return?gBr;?//主窗口背景使用這個背景刷

}

else

{

pDC->SetBkMode(TRANSPARENT);

return (HBRUSH)::GetStockObject(NULL_BRUSH);?//其他控件使用透明背景

}

//?TODO:?Return?a?different?brush?if?the?default?is?not?desired

return?hbr;

}

③效果圖:

靜態文本框、單行多行輸入文本框、列表框、ListCtrl等都可以***享主窗口的背景,但是按鈕需要另外設置才可以。