📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button3: TButton;
Button7: TButton;
Button11: TButton;
Button15: TButton;
procedure Button15Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button11Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
const
Step=200;
var
Bitmap:TBitmap;
X0,Y0:integer;
MidX,MidY:integer;
RatioX,RatioY:real;
{$R *.DFM}
// 清屏
procedure TForm1.Button15Click(Sender: TObject);
var
I:Integer;
begin
Bitmap:=TBitmap.Create;
Bitmap.LoadFromFile('DELPHI6.BMP');
X0:=Form1.Width div 2;
Y0:=Form1.Height div 2;
RatioX:=Bitmap.Width/Step;
RatioY:=Bitmap.Height/Step;
for I:=0 to Step do
begin
MidX:=Round(RatioX*I*0.5);
MidY:=Round(RatioY*I*0.5);
BitBlt(Form1.Canvas.Handle,X0-MidX,Y0-MidY,Round(RatioX*I),Round(RatioY*I),Bitmap.Canvas.Handle,X0-MidX,Y0-MidY,blackness);
end;
Bitmap.Free;
end;
// 从中心到四周
procedure TForm1.Button1Click(Sender: TObject);
var
I:Integer;
begin
Button15Click(Sender);
Bitmap:=TBitmap.Create;
Bitmap.LoadFromFile('DELPHI6.BMP');
X0:=Width div 2;
Y0:=Height div 2;
RatioX:=Bitmap.Width/Step;
RatioY:=Bitmap.Height/Step;
for I:=0 to Step do
begin
MidX:=Round(RatioX*I*0.5);
MidY:=Round(RatioY*I*0.5);
BitBlt(Form1.Canvas.Handle,X0-MidX,Y0-MidY,Round(RatioX*I),Round(RatioY*I),Bitmap.Canvas.Handle,X0-MidX,Y0-MidY,srccopy);
end;
Bitmap.Free;
end;
// 从左上角到右下角
procedure TForm1.Button3Click(Sender: TObject);
var
I:Integer;
begin
Button15Click(Sender);
Bitmap:=TBitmap.Create;
Bitmap.LoadFromFile('DELPHI6.BMP');
RatioX:=Bitmap.Width/Step;
RatioY:=Bitmap.Height/Step;
for I:=0 to Step do
begin
BitBlt(Form1.Canvas.Handle,0,0,Round(RatioX*I*1),Round(RatioY*I*1),Bitmap.Canvas.Handle,0,0,srccopy);
end;
Bitmap.Free;
end;
// 从左到右
procedure TForm1.Button7Click(Sender: TObject);
var
I:Integer;
begin
Button15Click(Sender);
Bitmap:=TBitmap.Create;
Bitmap.LoadFromFile('DELPHI6.BMP');
X0:=0;
Y0:=0;
RatioX:=Bitmap.Width/Step;
RatioY:=Bitmap.Height/Step;
for I:=0 to Step do
begin
MidX:=Round(RatioX*I);
MidY:=Round(RatioY*I);
BitBlt(Form1.Canvas.Handle,0,0,Round(RatioX*I*1),Height,Bitmap.Canvas.Handle,0,0,srccopy);
end;
Bitmap.Free;
end;
// 从中间到上下两侧
procedure TForm1.Button11Click(Sender: TObject);
var
I:Integer;
begin
Button15Click(Sender);
Bitmap:=TBitmap.Create;
Bitmap.LoadFromFile('DELPHI6.BMP');
X0:=Width div 2;
Y0:=0;
RatioX:=Bitmap.Width/Step;
RatioY:=Bitmap.Height/Step;
for I:=0 to Step do
begin
MidX:=Round(RatioX*I*0.5);
MidY:=Round(RatioY*I);
BitBlt(Form1.Canvas.Handle,X0-MidX,0,Round(RatioX*I*0.5),Width,Bitmap.Canvas.Handle,X0-MidX,0,srccopy);
BitBlt(Form1.Canvas.Handle,Width div 2,0,Round(RatioX*I*0.5),Width,Bitmap.Canvas.Handle,Width div 2,0,srccopy);
end;
Bitmap.Free;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -