保留我在表格上画的东西?

时间:2009-12-20 19:40:13

标签: c# vb.net forms

所以,是的,

基本上我使用Graphics在表单上绘制了一些东西。现在,如果我在窗体上移动窗口,我绘制的东西就会被删除。

有没有办法保留图纸?

(我正在使用Windows.Forms)

3 个答案:

答案 0 :(得分:1)

您需要绘制控件的Paint事件。

答案 1 :(得分:1)

你必须重新绘制你在Paint事件处理程序中绘制的内容。

答案 2 :(得分:1)

不要从Paint事件处理程序外部绘制到Form(这听起来像你可能正在做的那样)。

您可以每次在Paint事件处理程序中重绘内容,也可以一次性绘制到屏幕外位图,然后只在Paint处理程序中显示位图。

两者的代码几乎相同,但要绘制到屏幕外的位图,您需要为要绘制的Graphics上下文设置一个新的位图。

Here's an example说明了使用屏幕外位图存储图像所需的一切。 (实际上,如果从此示例中删除屏幕外位图代码,剩下的代码就是如何在Paint处理程序中绘制)