登录
首页 » Delphi源码 » Delphi 垂直交错显示效果

Delphi 垂直交错显示效果

于 2023-04-12 发布 文件大小:1.44 MB
0 46
下载积分: 2 下载次数: 1

代码说明:

图片的垂直交错效果,Delphi 编写的图片垂直交错显示效果,之前就分享过这种效果,类似百叶窗的交替显示效果,可用于图片转场,不过本效果还有很多地方需要优化,当时是写给一本书,作为随书实例的,有兴趣的可参考,关于本功能的关键代码部分,请看以下代码:   newbmp:= TBitmap.Create;   newbmp.Width:=image1.Width;   newbmp.Height:=image1.Height;   bmpheight:=image1.Height;   bmpwidth:=image1.Width;   i:=0;   while i0 do    begin    newbmp.Canvas.CopyRect(Rect(0,j-1,bmpwidth,j),image1.Canvas,Rect(0,bmpheight-i+j-1,bmpwidth,bmpheight-i+j));    newbmp.Canvas.CopyRect(Rect(0,bmpheight-j-1,bmpwidth,bmpheight-j),image1.Canvas,Rect(0,i-j,bmpwidth,i-j+1));    j:=j-2;    Application.ProcessMessages;    end;    form1.Canvas.Draw(0,0,newbmp);    i:=i+2;   end;   newbmp.free;

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • Delphi 使用ESC键停止循环
    Delphi 使用ESC键停止循环,示例演示程序,单击按钮开始循环,按下键盘ESC键,将停止循环。程序核心代码:   begin    for i:= 0 to 9999999 do    begin    Edit1.Text := IntToStr(i);    //允许应用程序在循环中可以处理消息    Application.ProcessMessages;    //用是 ESC 键放弁循环    if GetKeyState(VK_ESCAPE) and 128 = 128 then    Break;    end;   end;
    2022-03-24 17:07:24下载
    积分:1
  • Delphi 让组件拖动窗体 按钮拖动窗口移动
    Delphi 让组件拖动窗体 按钮拖动窗口移动,如图所示的窗口中,用户只需按住按钮,即可将整个窗口在屏幕上随意拖动,实现了如何用组件来移动窗体的功能。下面是相关代码:   procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;    Shift: TShiftState; X, Y: Integer);   begin    if Button=MBLeft then    begin    releasecapture;    PerForm(WM_SYSCOMMAND,$F012,0);    end;   end;
    2023-03-07 20:25:03下载
    积分:1
  • Delphi版智能图片放大器
    Delphi版智能图片放大器,用滑块改变放大倍率,向左滑,则放大位数变大,反之则变校打开程序后,鼠标在图片区域移动,即可把鼠标悬停区域的图像放大显示N倍,放大位数就是刚才提到的,滑块来调整的放大位数,部分代码可参考如下:   Const //定义放大的区域    dSide=50;//区域大小   var    sSide: Integer;//放大比例[1至100],1为最大100为缩小    msHide: Boolean;    OldX,OldY,NewX,NewY: integer;    Dest,Source: TRect;   {$R *.DFM}   Procedure TForm1.ImageFD(x,y,Side: Integer);//定义放大区域及放大过程   begin    sSide:=30; //初始化放大比例    msHide:=True;    //Canvas.CopyMode:=cmSrcCopy;    image1.Picture.Assign(image2.Picture);   end;   详细情况请下载源码后查看Unit1.pas文件。
    2023-04-17 17:00:04下载
    积分:1
  • Delphi Canvas.Brush为窗体绘制渐变背景
    Delphi 为窗体绘制渐变背景,这里使用了Delphi中的Canvas.Brush.Color来实现窗口背景的渐变色,不错吧?如示例图的左右渐变效果,实现的代码:   for i:=0 to self.Width-1 do   begin   c1:=GetRValue(StartColor)+Trunc(i*(GetRValue(EndColor)-GetRValue(StartColor))/(self.Width-1));   c2:=GetGValue(StartColor)+Trunc(i*(GetGValue(EndColor)-GetGValue(StartColor))/(self.Width-1));   c3:=GetBValue(StartColor)+Trunc(i*(GetBValue(EndColor)-GetBValue(StartColor))/(self.Width-1));   Canvas.Brush.Color:=RGB(c1,c2,c3);   //每次画矩形的画刷颜色   Dct:=Rect(i,0,i+1,self.Height);   //每次刷绘的矩形区域   Canvas.FillRect(Dct);   //填充颜色   end;
    2022-05-24 21:26:59下载
    积分:1
  • Delphi 获取服务器时间 更新本机时间
    Delphi 通过时间服务器更新时间,包括了两个功能:1、获取服务器时间,2、更新本机时间。通过时间服务器,可一键自动更新日期时间,不过本实例连接的服务器已经失效了,程序不能连接,会假死,测试时候要注意。
    2022-01-24 08:49:50下载
    积分:1
  • Delphi演示UniCode编、简体繁体互转的方法实现
    Delphi演示如何实现UniCode编码、汉字的繁简互转功能,同时将字符转换为unicode码值(十六进制):   常用编码:   codepage=936 简体中文GBK   codepage=950 繁体中文BIG5   codepage=437 美国/加拿大英语   codepage=932 日文   codepage=949 韩文   codepage=866 俄文   codepage=65001 unicode UTF-8   本例子中仅使用了936、950,如果你要进行其他语言的编码转换,仅需相应改变其中的编码值即可。
    2023-06-10 00:30:04下载
    积分:1
  • Delphi 打印图形(图片)
    Delphi 打印图形,把图片打印出来,通过这个例子,你可以学习到:    strect:Trect;//定义打印输出矩形框的大小    temhi,temwd:integer;   begin    if DIGPrint.execute then    begin    temhi:=imgpic.picture.height;    temwd:=imgpic.picture.width;    while (temhi = printer.pageheight div 2)and    //将图形放大到打印页面的1/2大小    (temwd = printer.pagewidth div 2) do    begin    temhi:=temhi+temhi;    temwd:=temwd+temwd;    end;    with strect do //定义图形在页面上的中心位置输出    begin    left := (printer.pagewidth -temwd) div 2;    top := (printer.pageheight-temhi) div 2;    right := left+temwd;    bottom := top+temhi;    end;    with printer do    begin    begindoc;    canvas.stretchdraw(strect,imgpic.picture.graphic);    enddoc;    end;    end;
    2022-10-24 23:35:04下载
    积分:1
  • Delphi 7.0 改变菜单中的字体样式
    Delphi 7.0 改变菜单中的字体样式,本程序其实实现了两种功能,1、枚举系统中所有已安装的字体,并加载到Listbox列表中供选择,2,改变字体样式,选中列表中的任意字体样式,单击即可改变菜单中的文字样式,为窗口中其它区域的文字设置字体样式的时候也可参考。   begin    ListBox1.Items:=Screen.Fonts;字体样式    self.MainMenu1.AutoHotkeys:=maManual;    self.MainMenu1.AutoLineReduction:=maManual;    Screen.MenuFont.Size:=12;字号   end;
    2022-07-27 08:35:14下载
    积分:1
  • Delphi getTime 获取当前日期时间实例
    Delphi getTime 获取当前日期时间,用的是DateTimeToStr,运行本窗口后,自动获取当前电脑上的时间,显示在窗体指定的Lable标签中,这是核心的源代码:   procedure TForm1.Timer1Timer(Sender: TObject);   begin    Label1.Caption := DateTimeToStr(now());   end;
    2022-11-15 02:10:03下载
    积分:1
  • Delphi API笔刷制作
    Delphi API笔刷制作实例的源码,这个笔刷只不过比较简单,点击按钮后自动生成,而且是有规则的网格线,或许通过这个简单的笔刷,你可以学习到用Delphi制作笔刷的入门技巧,相关的代码如下:   procedure TForm1.Button1Click(Sender: TObject);   var    LogBrush:TLogBrush;   begin    LogBrush.lbStyle:=BS_HATCHED;    LogBrush.lbColor:=clRed;    LogBrush.lbHatch:=HS_DIAGCROSS;    Canvas.Brush.Handle := CreateBrushIndirect(LogBrush);    Canvas.FillRect(ClientRect);   end;
    2022-03-30 01:57:49下载
    积分:1
  • 696518资源总数
  • 104292会员总数
  • 28今日下载