用PAINTBOX显示图片,当其被其它程序遮挡后,PAINTBOX上的被遮挡部分的图片就不见了,怎么解决?(50分)

  • 主题发起人 主题发起人 cuiax
  • 开始时间 开始时间
在PaintBox的OnPaint事件里写代码。
 
那么什么时候保存PAINTBOX上的图片呢?
没有保存的图片,我在ONPAINT中重绘什么图片呢?
 
TPaintBox是不会自动重画的,需要自己在OnPaint中实现重画。
其实最后的方法是使用双缓冲机制:
在內存中创建一个TBitmap,所有绘图操作均以TBitmap.Canvas来实现。
然后响应TPaintBox.OnPaint:
PaintBox1.Canvas.Draw(0, 0, Bitmap);
 
你的在PaintBox中的图片是什么,是什么时候显示的,应该是在显示
完了之后立即保存图片
用Paintbox.canvas.CopyRect方法,将其保存在自已创建的bitmap
中即可
重画方法参见楼上的那位。
 
多人接受答案了。
 
后退
顶部