CSDN博客

img sweihua

DELPHI中图像的显示效果

发表于2001/5/24 17:58:00  422人阅读

  所谓百叶窗效果,就是将画布分成若干个区域,各区域以
渐进方式同时复制图形,就象翻动的百叶窗一样.以下就是一
个显示特效的过程实例:
        首先,新建一个工程,在窗体上添加两个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的实例)。
阅读全文
0 0

相关文章推荐

img
取 消
img