给单文档MFC窗口加背景图片,背景图2M多,设置初始窗口最大化,但点了右上角的最大化/还原按钮之后,背景图片不清晰了,是什么问题啊,最大化的时候满清楚的。
解决方案 »
- yincheng01(黑暗伯爵) 居然4月专家分第4,险些拿花
- 在一个基于SDI的应用程序中,如何实现用户登录对话框,就是用户输入密码后才能进入主界面,请问应把代码加在哪里,应该加什么代码?谢谢
- 请问如何取得系统中文件类型所对应的图标?
- 新手提问:如何在openh323的应用(例如提供的例子mfc)中使用socket编程?
- ComboBox的输入限制问题。大家进来看看,特别是高手
- 如何重载打印对话框??(请各位帮帮忙)
- 如何能学好C语言
- 为什么不能处理WM_KEYDOWN消息?---来者给分!
- 怎么得到一个int型的每个字节
- 对话框程序的,列表控件变量有上限吗。。。
- DEBUG正常RELEASE下出现无法定位序数xxx 到动态链接库XXX.dll的BUG
- MFC 为clistctrl里添加的combobox动态绑定editchange事件。
用BilBit试试
void CFaceView::OnPaint()
{
CPaintDC dc(this); // device context for painting
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP1);
BITMAP bmpInfo;
bmp.GetBitmap(&bmpInfo);
CDC dcMemory;
dcMemory.CreateCompatibleDC(&dc);
CBitmap *pOldBmp=dcMemory.SelectObject(&bmp);
CRect wndRt;
this->GetClientRect(&wndRt);
dc.StretchBlt(0, 0, wndRt.Width(), wndRt.Height(), &dcMemory, 0, 0, bmpInfo.bmWidth, bmpInfo.bmHeight, SRCCOPY);
dcMemory.SelectObject(pOldBmp);
// Do not call CFormView::OnPaint() for painting messages
}
新手还不会插入图片,见笑了…………窗口最大化还原之后,图片模糊了,像那种像素很低图片最大化后的效果。哪里出问题了呢?
2楼已经给出答案了。lz都不试一下的吗
this->GetClientRect(&wndRt);
dc.SetStretchBltMode(HALFTONE); //设置拉伸模式后,肯定可以解决失真的现象,没解决说明这个函数
//没起作用;
dc.StretchBlt(0, 0, wndRt.Width(), wndRt.Height(), &dcMemory, 0, 0, bmpInfo.bmWidth, bmpInfo.bmHeight, SRCCOPY);
dcMemory.SelectObject(pOldBmp);