读书人

请问关于在STATIC中绘图的有关问题

发布时间: 2012-03-13 11:21:12 作者: rapoo

请教关于在STATIC中绘图的问题!
本人刚刚接触VC, 现在项目遇到问题.

界面中有一个ListBox, 一个Static, 选中列表中某一项时, 要在Static中绘制相应的图片预览. 关于如何绘图,查了查资料, 都说的不是很详细, 代码也缺少注释, 新人看不太懂. 现在有几个问题想请教一下,麻烦回答详细一点

1: 看资料说绘图代码要放在OnPaint()中, 那我如何让程序运行是不显示, 当选中列表中一项的时候如何调用绘图函数, 并传参进去?

2: 我看有些资料是读取现有的位图, 然后再绘制. 我没有现成的位图, 可以不生成位图, 直接将图片的画法保存在内存中然后绘制到Static中吗? 需要怎样做?

3: 我在网上资料中复制了别人的绘图例子放到我的代码中, 运行之后static中是画出线了, 但是对话框上的其他控件不见了,这是为什么呢? 如何解决?

[解决办法]
用CreateCompatibleDC创建一个和CStatic的dc兼容的dc
然后用CreateDIBitmap创建一个位图,参数有bmp头以及图形的数据
SelectObject
BitBlt复制图像

读书人网 >VC/MFC

热点推荐