解决方案 »
- 菜鸟 刚学MFC,用的是VS2008;创建一个工程,但老是出现以下11个错误,试过基于对话的、创建默认向导都是一样的错误。望高手指点!
- 问个CDIALOG有DOMODAL,CFORMVIEW呢
- 请问大家,谁熟悉雷达方程
- 关于非摸态对话框
- 有关用vc直接打开一个网页的问题?
- 为什么我的程序在一个线程调用会出现异常!
- Ado连接问题,在线等候,立即给分
- 数据库问题。请各位达人进来看看
- 请问怎样在文件的右键菜单中加入自己的程序?
- 我做了一个向导,可属性单PropertySheet的左上角有一个兰色的圆,应该是个bitmap吧,怎样去掉?help
- 请教,如何把宽字符转换为网址上显示的字符窜?
- socket接收缓冲区设置为2M,那么是不是对端发2M数据,就满了(通讯的高手来,坐等结贴)
if(image_check.Load(L"E:\\psb.jpg"))
{
MessageBox(L"图片已损坏",0,0);
return;
}
CRect rect;
CStatic m_CheckPic;
m_CheckPic.GetClientRect(&rect);
CDC* pDC= m_CheckPic.GetWindowDC();
pDC->SetStretchBltMode(STRETCH_HALFTONE);
image_check.Draw(pDC->m_hDC,rect); ReleaseDC( pDC );
pDC=NULL;
image_check.Destroy();
你这样做 应该把加载和画图分开
画图应该放在onpaint中执行
CBitmap m_bitmap;
void LoadJpg(CBitmap &mBitmap,CString path);.cpp
void XXX::LoadJpg(CBitmap &mBitmap,CString path)
{
CImage pic;
pic.Load(path);
CDC *pDC = GetDC();
CDC memDC;
memDC.CreateCompatibleDC(pDC);
mBitmap.CreateCompatibleBitmap(pDC,100,100);
CBitmap *OldBitmap =memDC.SelectObject(&mBitmap);
pic.Draw(memDC.m_hDC,0,0,100,100,0,0,100,100); memDC.SelectObject(OldBitmap);
DeleteDC(memDC);
OldBitmap = NULL;
}BOOL XXX::OnInitDialog()
{
LoadJpg(m_bitmap);
((CStatic *)GetDlgItem(IDC_STATIC_PIC))->SetBitmap(m_bitmap);
}