unit1.pas

来自「这是一个八数码问题代码。可以很清楚的看到它整个执行过程」· PAS 代码 · 共 97 行

PAS
97
字号
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
    FCells: TWCells;
    procedure Move(Status:TWStatus);
    { Private declarations }
  public
    procedure Drawdisp;
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  FCells:=TWCells.Create(3,3);
  DrawDisp;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  FCells.Free;
end;

procedure TForm1.Move(Status:TWStatus);
begin
  // TODO -cMM: TForm1.Move default body inserted
  FCells.Move(Status);
  DrawDisp;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  move(w_Case.Up)

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Move(w_Case.Down);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Move(w_Case.Left);
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
  Move(w_Case.Right);
end;

procedure TForm1.Drawdisp;
var
  intI,intJ:integer;
  strLine:string;

begin
  // TODO -cMM: TForm1.Drawdisp default body inserted
  Memo1.Clear;
  for  intI:=FCells.RowStart  to  FCells.RowEnd   do
  begin
    strLine:='';
    for intJ :=FCells.ColStart   to FCells.ColEnd  do
    begin
      strLine:=strLine+'-'+inttostr(Fcells.Cells[inti,intJ].Center.Value);
    end;
    MeMo1.Lines.Add(copy(strLIne,2,length(strLine)));
  end;
end;

end.

⌨️ 快捷键说明

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