我做了一个绘制公路模型的程序,在画布上我用画位图和画线条的方式绘制公路模型,每个图像都是一个自定义的对象,当我在绘制的图形很多时,或者是频繁重绘画布时,系统便会停止工作,提示“缓冲操作当前正在进行中,无法释放 BufferedGraphicsContext”。
小弟向各位大哥请教了,谢谢了

解决方案 »

  1.   

    如果你每次画的时候都用new Pen(or new Brush),应该是GDI对象没有来得及被释放...
    试试用全局的GDI对象,以避免频繁地创建GDI object
      

  2.   

    当在画布(画布我采用的是PictureBox控件)上画的图形多了的时候,或者是我移动图形(每次移动完便会重绘画布),出现的很频繁,而且系统会自动退出,根本无法捕获异常。我使用的是一个全局的Graphics对象,其他的Pen,Brush等对象都是在using语句中的,用完即释放的,系统所占资源也不高。当我采用msdn上的自己管理缓冲区绘图时,绘出来后画布的背景是黑色,郁闷死我了请各位大哥帮帮忙,救救小弟