为了账号安全,请及时绑定邮箱和手机立即绑定

请问关于MFC在窗口中显示位图,在View类的OnDraw函数中添加如下代码:?

请问关于MFC在窗口中显示位图,在View类的OnDraw函数中添加如下代码:?

慕沐林林 2019-07-24 19:15:23
MFC在窗口中显示位图,在View类的OnDraw函数中添加如下代码:
查看完整描述

3 回答

?
炎炎设计

TA贡献1808条经验 获得超4个赞

没有理解View类的画图流程。
在Ondraw中,对pDC的操作,才是对界面的绘制,为什么要弄一个CStatic呢。。
(HBITMAP)::LoadImage这个放到初始化里面,句柄做类变量
Ondraw里面,pDC->BitBlt画图

查看完整回答
反对 回复 2019-07-29
?
繁华开满天机

TA贡献1816条经验 获得超4个赞

CStatic startPics;HBITMAP startpic;
放在CAccesscontrolView类中定义,

startPics.Create(NULL,WS_CHILD|WS_VISIBLE|SS_BITMAP|SS_CENTERIMAGE,CRect(100,357,100+410,357+350),this,NULL);放在CAccesscontrolView的OnCreate函数中;

如果你的位图在程序后就不需要改变,你可以把startpic=(HBITMAP)::LoadImage(NULL,"1.bmp",IMAGE_BITMAP,410,350,LR_LOADFROMFILE|LR_DEFAULTSIZE);和startPics.SetBitmap(startpic);
放在CAccesscontrolView的OnCreate函数中,startPics.Create后面;

如果程序运行后需要改变位图,把startpic=(HBITMAP)::LoadImage(NULL,"1.bmp",IMAGE_BITMAP,410,350,LR_LOADFROMFILE|LR_DEFAULTSIZE);
和startPics.SetBitmap(startpic);放在需要更改位图的函数里。



查看完整回答
反对 回复 2019-07-29
?
慕哥9229398

TA贡献1877条经验 获得超6个赞

不用初始化,其实pDC是OnPaint()函数传递过来的CDC指针,直接用即可。 如果你想自己创建CDC作;图,完全可以不理它,直接创建一个来用即可:CClient dc(this);dc.moveto(point);//等等

查看完整回答
反对 回复 2019-07-29
  • 3 回答
  • 0 关注
  • 484 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信