0

使用 DrawImageUnscaled 我的程序绘制抛物线或线...

如果我在程序绘制后按 Tab,则图像所在的面板会清除..

对于我使用的 ox 和 oy 轴?他们也消失了……

System.Drawing.Pen linepen;
linepen = new System.Drawing.Pen(System.Drawing.Color.Green);

System.Drawing.Graphics g = drawingboard.CreateGraphics();

g.DrawLine(linepen, 0, drawingboard.Height / 2, drawingboard.Width, drawingboard.Height / 2);
g.DrawLine(linepen, drawingboard.Width / 2, 0, drawingboard.Width / 2, drawingboard.Height);
timer1.Enabled = false;

我怎样才能解决这个问题 ?

4

1 回答 1

0

通常在 DOT.NET 中,您不只是在随机位置绘制您希望用户看到的内容。相反,每个面板(和控件)都有一个 OnPaint 函数,该函数在控件显示自身时被调用。你想修改这个函数来绘制你的新线。

当您使用 .NET 时,您会注意到,当应用程序中发生某些事件时,该函数将被多次调用——例如重新调整大小。这允许程序员更改窗口大小时显示的内容。

将上面的代码添加到控件的 OnPaint 函数中,它应该会更好地工作。

我不确定你所说的 ox 和 oy 是什么意思——你似乎没有任何代码

于 2013-03-07T18:44:23.970 回答