Delphi 7 + GDIPlus 简单实现双缓冲绘制移动图形


本文整理自网络,侵删。

 
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Gdiplus,
  GdipTypes,
  StdCtrls,
  Dialogs, ExtCtrls, jpeg;

type
  TForm1 = class(TForm)
    btn1: TButton;
    btn2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure btn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    GGraphic: TGpGraphics; //保存图形
    FBitMapBuff: TImage; //缓冲区
    FlyBitmap,radarbitmap:TGpImage;
  end;
var
  Form1:TForm1;
  y:Integer;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  DoubleBuffered := True;
  FBitMapBuff:=TImage.Create(nil);
end;

procedure TForm1.btn1Click(Sender: TObject);
begin
   FBitMapBuff.Height:=650;
   FBitMapBuff.Width:=650;
   GGraphic:=TGpGraphics.Create(FBitMapBuff.Canvas.Handle);
   radarbitmap:=TGpImage.Create('noname.jpg');
   FlyBitmap:=TGpImage.Create('fly16.png');
   GGraphic.DrawImage(radarbitmap,0,0,650,650);
   GGraphic.DrawImage(FlyBitmap,y*10,y*10,16,16);
   Canvas.Draw(0,0,FBitMapBuff.Picture.Bitmap);
   inc(y);
end;

相关阅读 >>

Delphi fmx 同时使用longtap和tap

Delphi 获取所有应用程序窗口标题 类似任务管理器

Delphi 查询某个字符在字符串出现的位置,支持查找次数

delph记录输出日志

Delphi实现文件拖放代码

github上通过星级评估排名前10的最受欢迎的开源Delphi项目

Delphi 把pf8bit位图变换成pf24bit位图

Delphi 提高进程自身权限

Delphi deletedirectory 删除目录下所有文件包括子文件夹下所有文件

Delphi synedit1 synmemo1 显示行号

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...