breakpf.pas

来自「Delphi编程实效百例的随书程序 这是其中的界面操作部分」· PAS 代码 · 共 92 行

PAS
92
字号
unit BreakpF;

interface

uses
  SysUtils, Windows, Messages, Classes, Graphics, Controls,
  Forms, Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Timer1: TTimer;
    Button2: TButton;
    Button3: TButton;
    procedure FormPaint(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormResize(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    X1, Y1, X2, Y2: Integer;
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormPaint(Sender: TObject);
begin
  Canvas.MoveTo (X1, Y1);
  Canvas.LineTo (X2, Y1);
  Canvas.LineTo (X2, Y2);
  Canvas.LineTo (X1, Y2);
  Canvas.LineTo (X1, Y1);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 close;
end;

procedure TForm1.FormResize(Sender: TObject);
begin
  Button1.Enabled := True;
  X1 := 10;
  Y1 := 10;
  X2 := ClientWidth - 10;
  Y2 := ClientHeight - 10;
  Invalidate;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if X1<X2 THEN
  begin
  X1 := X1 + 5;
  X2 := X2 - 5;
  end;
if X1>=X2 THEN
  begin
  X1 := 10;
  X2 := ClientWidth - 10;
  end;
if Y1<Y2 THEN
  begin
  Y2 := Y2 - 5;
  Y1 := Y1 + 5;
  end;
if Y1>=Y2 THEN
  begin
  Y1 := 10;
  Y2 := ClientHeight - 10;
  end;
Invalidate;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
timer1.Interval := timer1.Interval*2;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
timer1.Interval := timer1.Interval div 2;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?