MFC添加背景图片方法

此文系转载,忘了博客地址了
VC++中如何给对话框加背景图片(2010-03-22 16:57:59)

方法一:

1、声明成员变量CBrush m_brush;
2、在InitDialog中添加代码:

CBitmap bmp;

bmp.LoadBitmap(IDB_BITMAP1);   //IDB_BITMAP1是图片资源ID

m_brush.CreatePatternBrush(&bmp);

3、重载对话框的OnCtlColor,改最后的返回值:

return (HBRUSH)m_brush;

方法二:

把下面这段代码加进OnPaint()里就行了

 CPaintDC dc(this);

  CBitmap   bitmap;

  bitmap.LoadBitmap(IDB_BITMAP1);    //这个IDB_BITMAP1要自己添加

  CBrush   brush;

  brush.CreatePatternBrush(&bitmap);

  CBrush*   pOldBrush   =   dc.SelectObject(&brush);

  dc.Rectangle(0,0,200,200);   // 这些参数可以调整图片添加位置和大小

  dc.SelectObject(pOldBrush);

方法三:使用StretchBlt()函数,具有图像自适应窗体功能

 CPaintDC dc(this);

  CBitmap   bitmap;

  bitmap.LoadBitmap(IDB_BITMAP1);    //这个IDB_BITMAP1要自己添加

  CBrush   brush;

  brush.CreatePatternBrush(&bitmap);

  CBrush*   pOldBrush   =   dc.SelectObject(&brush);

  dc.Rectangle(0,0,200,200);   // 这些参数可以调整图片添加位置和大小

  dc.SelectObject(pOldBrush);

你可能感兴趣的:(mfc)