MFC如何使picture控件的图片随着对话框的大小改变而改变 10

已经解决了控件大小随着对话框大小的改变而变化的问题,不过解决的不太好,在改变对话框大小的时候,一些按钮上面的字会变形或者看不到现在的问题是,picture控件上面显示一幅... 已经解决了控件大小随着对话框大小的改变而变化的问题,不过解决的不太好,在改变对话框大小的时候,一些按钮上面的字会变形或者看不到
现在的问题是,picture控件上面显示一幅图片,改变对话框大小,picture控件大小也会改变,但是图片就不会跟着变化,这样会出现一部分黑色,怎么解决这个问题呢?
是在添加的onpaint里面加一些什么吗,这个图片的数据保存在一个 char*里面。
展开
 我来答
bhtzu
2013-06-05 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4134万
展开全部

图片随着对话框放大,只能使用图像放缩了,这个会产生一定的失真。

方法其实很简单,涉及两个方面:

  1. 将所有图片显示代码中,使用BitBlt改为 StretchBlt(需要调整两个参数,见2)

  2. StretchBlt放缩显示,有两个新参数,就是目标区域大小,这个就需要你根据实际情况进行坐标运算了,或者是控件计算好的比例,或者是控件放缩后的大小(因为你控件是需要计算的,因此这个坐标宽高应该是现成的)。

总之,就是在现有代码基础上,将位图点阵拷贝改成通过坐标计算后的放缩拷贝,多数代码应该在OnPaint里面吧。

追问
你好,在吗,我想百度Hi问你一些问题
追答
百度hi Web在线,hi有点小问题,可能回复不及时。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式