VC++请教,高手进来!我想BMP图像的显示,可是显示不了!下面是我的代码。看一下是哪里不行!
void CBmpView::OnFileOpen()
{
// TODO: Add your command handler code here
char szFileFilter[] = "位图(*.bmp)|*.bmp|所有文件(*.*)|*.*||";
CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, szFileFilter);
if (IDOK == dlg.DoModal())
{
m_Bmpname.Format("%s", dlg.GetPathName());
Showpicture(m_Bmpname);
}
}void CBmpView::Showpicture(CString Bmpname)
{
if (0 == m_State)
{
HBITMAP hBitmap;
hBitmap = (HBITMAP)LoadImage(NULL, m_Bmpname, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION
| LR_DEFAULTSIZE | LR_LOADFROMFILE);
m_bitmap.Attach(hBitmap);
m_State = 1;
}
Invalidate();
}
还请高手自己也试一下!看看是哪里不行。我搞了很久,也看了MSDN可是就是显示不出来。 m_Bmpname.Format("%s", dlg.GetPathName());
Showpicture(m_Bmpname);http://www.hvacr.cn/
m_Bmpname.Format("%s", dlg.GetPathName());
Showpicture(m_Bmpname);http://et.hvacr.cn/zhongyangkongtiaozhuji_1579_2.html
m_Bmpname.Format("%s", dlg.GetPathName());
Showpicture(m_Bmpname);http://et.hvacr.cn/hszhongyangkongtiao_16_2.html
void CBmpView::OnFileOpen()
{
// TODO: Add your command handler code here
char szFileFilter[] = "位图(*.bmp)|*.bmp|所有文件(*.*)|*.*||";
CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, szFileFilter);
if (IDOK == dlg.DoModal())
{
m_Bmpname.Format("%s", dlg.GetPathName());
Showpicture(m_Bmpname);
}
}void CBmpView::Showpicture(CString Bmpname)
{
if (0 == m_State)
{
HBITMAP hBitmap;
hBitmap = (HBITMAP)LoadImage(NULL, m_Bmpname, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION
| LR_DEFAULTSIZE | LR_LOADFROMFILE);
m_bitmap.Attach(hBitmap);
m_State = 1;
}
Invalidate();
}
还请高手自己也试一下!看看是哪里不行。我搞了很久,也看了MSDN可是就是显示不出来。 m_Bmpname.Format("%s", dlg.GetPathName());
Showpicture(m_Bmpname);http://www.hvacr.cn/
m_Bmpname.Format("%s", dlg.GetPathName());
Showpicture(m_Bmpname);http://et.hvacr.cn/zhongyangkongtiaozhuji_1579_2.html
m_Bmpname.Format("%s", dlg.GetPathName());
Showpicture(m_Bmpname);http://et.hvacr.cn/hszhongyangkongtiao_16_2.html
Lr_CreateDibSection|Lr_DefaultSize|Lr_LoadFromFile); //加载bmp文件
CBitmap bitmap;
bitmap.Attach(hBitmap); //关联位图对象
CDC dcimage;
dcimage.CreateCompatibleDC(GetDC()); //内存DC
BITMAP bmp;
bitmap.GetBitmap(&bmp); //获取位图信息
dcimage.SelectObject(&bitmap); //选取位图对象
pDC->BitBlt(0,0,bmp.bmWidth,bmp.bmHeight,&dcimage,0,0,SRCCOPY); //显示