您的位置:首页 > 其它

给对话框添加背景

2013-08-23 14:50 197 查看
给对话框添加背景只需在OnPaint()函数里添加以下代码就可以实现

 /*************添加对话框背景图片**************************************************************************/
/*获取设备当前大小*/
CPaintDC dc(this);
CRect rc;
GetClientRect(&rc);

CDC  dcMem;//目标内存
dcMem.CreateCompatibleDC(&dc);//创建兼容设备环境
CBitmap bmpBackground;
bmpBackground.LoadBitmap(IDB_BITMAP1);//加载位图
BITMAP bitmap;
bmpBackground.GetBitmap(&bitmap);//获取位图到bitmap
CBitmap *pBitmap = dcMem.SelectObject(&bmpBackground);

//函数从源矩形中复制一个位图到目标矩形,必要时按目前目标设备设置的模式进行图像的拉伸或压缩。
dc.StretchBlt(0,0,rc.Width(),rc.Height(),&dcMem,0,0,bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);
/********************************************************************************************************/   


其中要先在资源视图里导入位图,如上ID为IDB_BITMAP1。

还有就是StretchBlt()函数的使用了

BOOL StretchBlt( int x, int y, int nWidth, int nHeight, CDC* pSrcDC, int xSrc, int ySrc, int nSrcWidth, int nSrcHeight, DWORD dwRop );
  x:逻辑单元x轴左上角坐标;
  y:逻辑单元y轴左上角坐标;
  nWidth: 设备矩形宽度;
  nHeight:设备矩形高度;
  pSrcDC: 源设备上下文;
  xSrc :源矩形x轴左上角坐标;
  ySrc: 源矩形y轴左上角坐标;
  nSrcWidth:源矩形宽度;
  nSrcHeight:源矩形高度
  dwRop:指定要进行的光栅操作。参数常用SRCCOPY,意指将源矩形区域直接拷贝到目标矩形区域。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: