vb 窗口最小化后绘制的图形被擦除了

我在一个Panel4_MouseClick事件中绘制了一个drawellipse图形(绘制在Panel4中),但是窗口最小化后图形就不见了,怎么才能让系统保持图形或重绘。... 我在一个Panel4_MouseClick事件中绘制了一个drawellipse图形(绘制在Panel4中),但是窗口最小化后图形就不见了,怎么才能让系统保持图形或重绘。我用的是vs2010(我知道有个onpaint函数,但是onpaint一旦写好 ,并不能动态改变其绘图参数,我需要用Panel4_MouseClick事件动态赋予绘图参数) 展开
 我来答
szqaly
2013-11-12 · TA获得超过1745个赞
知道大有可为答主
回答量:2107
采纳率:77%
帮助的人:1511万
展开全部
如果控件有image属性的话,可以定义一位图并赋给它,在位图上进行绘图,可实现类似vb6的自动重画效果。比如在窗体上绘图:
Dim bmPage = New Bitmap(Width, Height) ‘定义位图
Dim G As Graphics = Graphics.FromImage(bmPage)'给位图建立绘图对象
G.SmoothingMode = Drawing2D.SmoothingMode.HighQuality'设置绘图平滑质量
用G的方法进行绘图
Me.Image = bmPage
我用的是vs2008,你的也应该能吧。
更多追问追答
追问
这个方法是可行的,我的程序里还有一个panel4_paint事件,上面的这个方法会触发panel4_paint事件,这可以避免么、
追答
这个好像有个sizeautodraw属性,设置true可以使窗口尺寸改变时触发Paint事件。我记得不是很清楚,但肯定有这样的属性。

你是不想触发paint事件,把它删掉不就可以了吗。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式