我正在使用gdi32.dll在vb6中工作。 在我的表单上有一个pricturebox,在其中根据数据模型中的数据绘制一些矩形以进行可视化。
ret = Rectangle(Picture1(i).hdc, X1, 0, x2 , 50)
在此Picturebox上,habe实现了mouseMouve()-Listener来通过鼠标移动来调整矩形。这个监听器调用我的函数进行绘制:
ret = Rectangle(Picture1(0).hdc, 0, 0, Picture1(0).Width, Picture1(0).Height)
ret = Rectangle(Picture1(i).hdc, X1, 0, x2 , 50)
因此,每次鼠标位置变化时,都会打印2个新的可收拾的桌子-一个矩形巫婆用背景色替换整个图片框区域,而另一个则可视化调整后的数据。
问题是已用内存。当我使用鼠标intesive进行数据查询时,它将占用全部内存并降低应用程序的速度。
所以我的问题是在绘制新矩形之前是否可以删除/放置旧矩形?