关于canvas所画的清除(各位大侠请帮帮忙,我没分了) (20分)

  • 主题发起人 主题发起人 chenliyan163
  • 开始时间 开始时间
C

chenliyan163

Unregistered / Unconfirmed
GUEST, unregistred user!
在 VB 的 PictureBox 控件里,可以用 Circle, Line, Point 等方式在图象表面绘图,然后用 Cls 的方式擦除先前用 Circle, Line, Point 等方式画上的图形。在 Delphi 3.0 中,采用 TCanvas 对象可以在图象上绘图,但却找不到类似 VB 的 Cls 方式来擦除已画上的图形。请问有什么方法可以解决这个问题?
 
用FillRect,画一个和Canvas一样大的矩形,把原来的东西全盖掉
 
procedure ClearCanvas(ACanvas: TCanvas);
var
R: TRect;
begin
with Acanvas do
begin
Brush.Style:=bsSolid;
Brush.Color:=clWhite;
GetWindowRect(Handle,R);
R.TopLeft:=ScreenToClient(R.TopLeft);
R.BottomRight:=ScreenToClient(R.BottomRight);
FillRect(R);
end;
end;
可以参考这个处理一下。
 
对,只有lyco说的方法了
 
补充一下,用背景色,fillrect 一下
 
不知道Photoshp是怎么处理的,他是怎么样一层一层画上去,而又是怎么样一层一层去掉的.
 
我想在PS中主要用的是图层.
每个图层是独立的,是不相关的图形吧
 
delphi的没有做过,j2me里面一般就是用底色再画一次
 
想知道他是如何实现的
 
多人接受答案了。
 
后退
顶部