急!急!请问在一个formview中如何显示一幅位图

lgx1916 2003-03-16 12:37:37

偶想在一个FORMVIEW上显示一幅位图,可是不知道该如何操作,请教各位。

因为很急,能不能给出源代码?谢谢了!
...全文
27 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
黄双全 2003-03-17
  • 打赏
  • 举报
回复
1.显示程序中的位图资源。(假设位图资源ID为:IDB_BITMAP)
代码段:
CBitmap m_bm; //存储位图位图类
CClientDC m_dc(this); //作图窗口的DC
CDC m_dcMem; //存储位图的DC
m_bm.LoadBitmap(IDCB_BITMAP);
dcMem.CreateCompatileDC(&m_dc);
m_dc.BitBlt(0,0,100,100,&m_dcMem,0,0,SRCCOPY);
2.动态显示部位图文件。(假设置外部的位图路径为m_ImgPath)
CDC dcMem;
CClientDC m_dc(this);
HBITMAP hbmpOld;
CRect m_Rect(0,0,600,600);//设定位图的作区
// 显示位图的实际大小.
hbmpOld=(HBITMAP)LoadImage(0,m_ImgPath,IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_DEFAULTSIZE);
// 若要设定位图的高和宽(m_ImgH,m_ImgW)则用下面的语句
// hbmpOld=(HBITMAP)LoadImage(0,m_ImgPath,IMAGE_BITMAP,m_ImgH,m_ImgW,LR_LOADFROMFILE);
dcMem.CreateCompatibleDC(m_dc);
hbmpOld=(HBITMAP)dcMem.SelectObject(hbmpOld);
m_dc->BitBlt(0,0,m_Rect->Width(),m_Rect->Height(),&dcMem,0,0,SRCCOPY);
dcMem.SelectObject(hbmpOld);
nustbobo 2003-03-17
  • 打赏
  • 举报
回复
可试试picture控件
lgx1916 2003-03-16
  • 打赏
  • 举报
回复
只能这样么?没有别的办法?
hblsf 2003-03-16
  • 打赏
  • 举报
回复
响应WM_PAINT或WM_ERASEBKGRND自己画
lgx1916 2003-03-16
  • 打赏
  • 举报
回复
在线等!!!

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧