DELPHI中图像的显示效果

王朝delphi·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

所谓百叶窗效果,就是将画布分成若干个区域,各区域以

渐进方式同时复制图形,就象翻动的百叶窗一样.以下就是一

个显示特效的过程实例:

首先,新建一个工程,在窗体上添加两个IMAGE控件,在控件

IMAGE1的PICTURE属性中导入一幅位图(*.bmp),并将IMAGE1

的VISIBLE属性设为FALSE。

然后,在代码窗口中定义如下过程:

procedure TForm1.fan;

var r1:Trect;

list,r,every:integer;

begin

list:=1;

every:=trunc(screen.Height/10)+1;

While list<=every do

begin

for r:=0 to 10 do begin

r1:=rect(0,r*every,screen.Width,R*every+list);

image2.Canvas.CopyRect(r1,image1.Canvas,r1);

end;

update;

Inc(list);

end;

end;

以后就可以在程序中需要的地方调用了。

下面就让我们看一下这是如何实现的,代码中RECT(X1,Y1,X2,Y2)

表示选定的矩形范围,(X1,Y1)是矩形左上角坐标,(X2,Y2)是矩形

右下角坐标。图形显示由COPYRECT(R1,CANVAS,R2)完成,其中R1是

目标区域,R2是被复制区域,CANVAS是被复制对象(它也可以是一个

TBITMAP的实例)。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航