原帖1:http://www.cnblogs.com/xiao-cheng/archive/2012/01/17/2325114.html
原帖2:http://www.cnblogs.com/fanghui/p/3565067.html
方法1:使用StretchBlt()函数,具有图像自适应窗体功能
//在Onpaint函数中加入如下代码 //----------给窗口设置背景图片---------------------------- CPaintDC dc(this); CRect myrect; GetClientRect(&myrect); CDC dcMem; dcMem.CreateCompatibleDC(&dc); CBitmap bmpBackground; bmpBackground.LoadBitmap(IDB_BITMAP1); //IDB_BITMAP_TOOL是你自己的图对应的ID BITMAP bitmap; bmpBackground.GetBitmap(& bitmap); CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground); dc.StretchBlt(0,0,myrect.Width(),myrect.Height(),&dcMem,0,0, bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);
方法2:
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;
方法3:把下面这段代码加进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);
时间: 2024-10-26 03:48:12