主题:绘图时,System.OutOfMemoryException报内存不足的异常
问大家个问题,谢谢!
在自定义的控件中,鼠标移动后,重绘控件。
我重绘时,先在内存中创建一个Bitmap,绘制好Bitmap后,再把图像显示出来.
运行后,开始时很正常,鼠标移动几次后,报异常,红色代码那一行有异常:
未处理的“System.OutOfMemoryException”类型的异常出现在 System.Drawing.dll 中。
其他信息: 内存不足。
代码如下:
protected override void OnPaint(PaintEventArgs pe)
{
img = new Bitmap(this.Width, this.Height);
graphics = Graphics.FromImage(img);
//绘制的内容
[color=FF0000] pe.Graphics.DrawImage(img, 0, 0);[/color]
img.Dispose();
}
protected override void OnMouseMove(MouseEventArgs e)
{
//计算一些数据
this.Refresh();
}
在自定义的控件中,鼠标移动后,重绘控件。
我重绘时,先在内存中创建一个Bitmap,绘制好Bitmap后,再把图像显示出来.
运行后,开始时很正常,鼠标移动几次后,报异常,红色代码那一行有异常:
未处理的“System.OutOfMemoryException”类型的异常出现在 System.Drawing.dll 中。
其他信息: 内存不足。
代码如下:
protected override void OnPaint(PaintEventArgs pe)
{
img = new Bitmap(this.Width, this.Height);
graphics = Graphics.FromImage(img);
//绘制的内容
[color=FF0000] pe.Graphics.DrawImage(img, 0, 0);[/color]
img.Dispose();
}
protected override void OnMouseMove(MouseEventArgs e)
{
//计算一些数据
this.Refresh();
}