当前位置:首页 > 网络编程 > 软件语言 > DELPHI > 五子棋源代码

五子棋源代码

点击次数:36 次 发布日期:2008-11-09 08:40:34 作者:源代码网
源代码网推荐
广告载入中
unit Main;
源代码网推荐
源代码网推荐 interface
源代码网推荐
源代码网推荐 uses
源代码网推荐  Windows, Messages, SysUtils, Classes, Controls, Forms, Dialogs,
源代码网推荐  ExtCtrls, StdCtrls, ComCtrls, Buttons, Graphics, mmsystem;
源代码网推荐
源代码网推荐 type
源代码网推荐  TForm1 = class(TForm)
源代码网推荐   StatusBar1: TStatusBar;
源代码网推荐   GroupBox1: TGroupBox;
源代码网推荐   GroupBox2: TGroupBox;
源代码网推荐   Panel1: TPanel;
源代码网推荐   Label1: TLabel;
源代码网推荐   BitBtn1: TBitBtn;
源代码网推荐   BitBtn2: TBitBtn;
源代码网推荐   Label3: TLabel;
源代码网推荐   Label4: TLabel;
源代码网推荐   BitBtn3: TBitBtn;
源代码网推荐   Image1: TImage;
源代码网推荐   Image2: TImage;
源代码网推荐   Label5: TLabel;
源代码网推荐   Label2: TLabel;
源代码网推荐   Label6: TLabel;
源代码网推荐   Label7: TLabel;
源代码网推荐   Label8: TLabel;
源代码网推荐   Label9: TLabel;
源代码网推荐   Label10: TLabel;
源代码网推荐   Timer1: TTimer;
源代码网推荐   Label11: TLabel;
源代码网推荐   procedure BitBtn2Click(Sender: TObject);
源代码网推荐   procedure BitBtn1Click(Sender: TObject);
源代码网推荐   procedure Image2MouseDown(Sender: TObject; Button: TMouseButton;

源代码网推荐    Shift: TShiftState; X, Y: Integer);
源代码网推荐   procedure FormCreate(Sender: TObject);
源代码网推荐   procedure BitBtn3Click(Sender: TObject);
源代码网推荐   procedure Timer1Timer(Sender: TObject);
源代码网推荐   procedure Label11MouseDown(Sender: TObject; Button: TMouseButton;
源代码网推荐    Shift: TShiftState; X, Y: Integer);
源代码网推荐
源代码网推荐  private
源代码网推荐   { Private declarations }
源代码网推荐  public
源代码网推荐   { Public declarations }
源代码网推荐  end;
源代码网推荐
源代码网推荐  FiveChess_Struct=record
源代码网推荐      x1 : integer;
源代码网推荐      y1 : integer;
源代码网推荐      x2 : integer;
源代码网推荐      y2 : integer;
源代码网推荐      state : byte;
源代码网推荐  end;
源代码网推荐  FiveChess_Data=array [0..14,0..14] of FiveChess_Struct;
源代码网推荐
源代码网推荐  Player = ( NON,White,Black);
源代码网推荐
源代码网推荐 var
源代码网推荐  Form1: TForm1;
源代码网推荐  Start_Flag : Boolean;
源代码网推荐  FiveChess_Array:FiveChess_Data ;
源代码网推荐  Online: player;
源代码网推荐  whitewin,blackwin:byte;
源代码网推荐  whitetime,blacktime:integer;
源代码网推荐  px1,px2,py1,py2 : integer;
源代码网推荐
源代码网推荐  Undo_i,Undo_j : integer;
源代码网推荐 function Ini_Main():Boolean ;


源代码网推荐 implementation
源代码网推荐
源代码网推荐 uses Option;
源代码网推荐
源代码网推荐 {$R *.DFM}
源代码网推荐 //{$R AOE.RES}
源代码网推荐
源代码网推荐
源代码网推荐 procedure Ini_FiveChess_Array();
源代码网推荐 var
源代码网推荐   i , j,k: integer;
源代码网推荐 begin
源代码网推荐
源代码网推荐    For i:=0 to 14 do begin
源代码网推荐      For j:=0 to 14 do begin
源代码网推荐        FiveChess_Array[i,j].x1:=16 25*j;
源代码网推荐        FiveChess_Array[i,j].y1:=16 25*i;
源代码网推荐        FiveChess_Array[i,j].x2:=36 25*j;
源代码网推荐        FiveChess_Array[i,j].y2:=36 25*i;
源代码网推荐        FiveChess_Array[i,j].state:=0;
源代码网推荐        end;
源代码网推荐     end;
源代码网推荐 end;
源代码网推荐
源代码网推荐 procedure Draw_qipan();
源代码网推荐 var
源代码网推荐    i,j : integer;
源代码网推荐 begin
源代码网推荐    Form1.Image2.Canvas.Brush.Color:=RGB(247,207,16);
源代码网推荐    Form1.Image2.Canvas.FillRect(Rect(0,0,400,400));
源代码网推荐    Form1.Image2.Canvas.pen.Color:=RGB(0,0,0);
源代码网推荐    for i:=1 to 16 do begin
源代码网推荐      Form1.Image2.Canvas.MoveTo(0,25*i);
源代码网推荐      Form1.Image2.Canvas.LineTo (400,25*i);
源代码网推荐      Form1.Image2.Canvas.MoveTo(25*i,0);
源代码网推荐      Form1.Image2.Canvas.LineTo (25*i,400);
源代码网推荐    end;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐
源代码网推荐 procedure Undo_Run();
源代码网推荐 var
源代码网推荐    x1,x2,y1,y2 : integer;
源代码网推荐 begin
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐    if (Undo_i<>-1) and (Undo_j<>-1) then  begin
源代码网推荐      FiveChess_array[Undo_i,Undo_j].state :=0;
源代码网推荐      x1:= FiveChess_Array[Undo_i,Undo_j].x1-2;
源代码网推荐      y1:= FiveChess_Array[Undo_i,Undo_j].y1-2;
源代码网推荐      x2:= FiveChess_Array[Undo_i,Undo_j].x2 2;
源代码网推荐      y2:= FiveChess_Array[Undo_i,Undo_j].y2 2;
源代码网推荐      Form1.Image2.Canvas.Brush.Color:=RGB(247,207,16);
源代码网推荐      Form1.Image2.Canvas.FillRect(rect(x1,y1,x2,y2));
源代码网推荐      Form1.Image2.Canvas.pen.Color:=RGB(0,0,0);
源代码网推荐      Form1.Image2.Canvas.MoveTo((x1 x2)div 2-1 , y1);
源代码网推荐      Form1.Image2.Canvas.LineTo((x1 x2)div 2-1 , y2);
源代码网推荐      Form1.Image2.Canvas.MoveTo(x1,(y1 y2)div 2-1);
源代码网推荐      Form1.Image2.Canvas.LineTo(x2,(y1 y2)div 2-1);
源代码网推荐
源代码网推荐      end;

源代码网推荐
源代码网推荐    If Online=black then
源代码网推荐      Online:=White
源代码网推荐    else
源代码网推荐      Online:=Black; 
源代码网推荐
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐 function Ini_Main():Boolean ;
源代码网推荐
源代码网推荐
源代码网推荐 begin
源代码网推荐
源代码网推荐    Result:=true;
源代码网推荐
源代码网推荐    px1:=0;
源代码网推荐    px2:=0;
源代码网推荐    py1:=0;
源代码网推荐    py2:=0;
源代码网推荐
源代码网推荐    Undo_i:=-1;
源代码网推荐    Undo_j:=-1;
源代码网推荐
源代码网推荐    whitetime:=0;
源代码网推荐    blacktime:=0;
源代码网推荐
源代码网推荐    form1.Label9.Caption :=inttostr(whitewin);
源代码网推荐    form1.Label10.Caption :=inttostr(blackwin);
源代码网推荐
源代码网推荐
源代码网推荐    Ini_FiveChess_Array;
源代码网推荐    Draw_Qipan;
源代码网推荐 end;
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐 Function Judge_Success_on_off (X,Y,State:integer):Boolean;
源代码网推荐 var
源代码网推荐    i,j,k,count : integer;
源代码网推荐 begin
源代码网推荐    Count:=0;
源代码网推荐    Result:=false;
源代码网推荐
源代码网推荐    // 判断竖列
源代码网推荐    For i:=X-4 to X 4 do
源代码网推荐      if (i>=0) and (i<=15) then
源代码网推荐       begin
源代码网推荐          if FiveChess_array[i,y].state=state then
源代码网推荐            begin

软件开发网 www.mscto.com


源代码网推荐              Inc(Count) ;
源代码网推荐              if count=5 then begin
源代码网推荐                result:=true;
源代码网推荐                break;
源代码网推荐                end;
源代码网推荐            end
源代码网推荐          else
源代码网推荐            Count:=0;
源代码网推荐       end;
源代码网推荐    //判断横行
源代码网推荐    count:=0;
源代码网推荐    For j:=y-4 to y 4 do
源代码网推荐      if (j>=0) and (j<=15) then
源代码网推荐       begin
源代码网推荐          if FiveChess_array[X,j].state=state then
源代码网推荐            begin
源代码网推荐              Inc(Count) ;
源代码网推荐              if count=5 then begin
源代码网推荐                result:=true;
源代码网推荐                break;
源代码网推荐                end;
源代码网推荐            end
源代码网推荐          else
源代码网推荐            Count:=0;
源代码网推荐       end;
源代码网推荐    //判断""方向
源代码网推荐    count:=0;
源代码网推荐    For k:=-4 to 4 do begin
源代码网推荐        i:=X k;
源代码网推荐        j:=Y k;
源代码网推荐        if (j>=0) and (j<=15) And(i>=0) and(i<=15) then
源代码网推荐         begin
源代码网推荐          if FiveChess_array[i,j].state=state then
源代码网推荐            begin
源代码网推荐              Inc(Count) ;
源代码网推荐              if count=5 then begin
源代码网推荐                result:=true;
源代码网推荐                break;
源代码网推荐                end;
源代码网推荐            end
源代码网推荐          else
源代码网推荐            Count:=0;
源代码网推荐       end;
源代码网推荐    end;
源代码网推荐   //判断"/"方向
源代码网推荐    count:=0;
源代码网推荐    For k:=-4 to 4 do begin
源代码网推荐        i:=X k;
源代码网推荐        j:=Y-k;
源代码网推荐        if (j>=0) and (j<=15) And(i>=0) and(i<=15) then
源代码网推荐         begin
源代码网推荐          if FiveChess_array[i,j].state=state then
源代码网推荐            begin
源代码网推荐              Inc(Count) ;
源代码网推荐              if count=5 then begin
源代码网推荐                result:=true;

源代码网推荐                break;
源代码网推荐                end;
源代码网推荐            end
源代码网推荐          else
源代码网推荐            Count:=0;
源代码网推荐       end;
源代码网推荐    end;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐 procedure TForm1.BitBtn2Click(Sender: TObject);
源代码网推荐 begin
源代码网推荐    Application.Terminate ;
源代码网推荐 end;
源代码网推荐
源代码网推荐 procedure TForm1.BitBtn1Click(Sender: TObject);
源代码网推荐 begin
源代码网推荐    Start_Flag:=true;
源代码网推荐    If Start_Flag then begin
源代码网推荐     Form1.Image2.Enabled := true;
源代码网推荐     Form1.Timer1.Enabled := true;
源代码网推荐     Ini_Main;
源代码网推荐
源代码网推荐    end;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 function Draw_Qizi_White(X,Y : Integer):boolean;
源代码网推荐 var
源代码网推荐    i,j,x1,x2,y1,y2 : integer;
源代码网推荐 begin
源代码网推荐    result := false;
源代码网推荐    for i:=0 to 14 do
源代码网推荐      For j:=0 to 14 do begin
源代码网推荐        if (X> FiveChess_Array[i,j].x1)and(X<FiveChess_Array[i,j].x2)
源代码网推荐       and (y> FiveChess_Array[i,j].y1)and(y<FiveChess_Array[i,j].y2)
源代码网推荐       and (FiveChess_Array[i,j].state=0)  then
源代码网推荐       begin
源代码网推荐          if FiveChess_Array[Undo_i,Undo_j].state<>0 then begin
源代码网推荐           Form1.Image2.Canvas.Brush.Color:=Rgb(100,100,100);
源代码网推荐           Form1.Image2.Canvas.FillRect (Rect(px1,py1,px2,py2));
源代码网推荐          end;
源代码网推荐
源代码网推荐          Form1.Image2.Canvas.Brush.Color:=Rgb(255,255,255);
源代码网推荐          Form1.Image2.Canvas.Ellipse ( FiveChess_Array[i,j].x1,
源代码网推荐          FiveChess_Array[i,j].y1,FiveChess_Array[i,j].x2,FiveChess_Array[i,j].y2);
源代码网推荐          Form1.Image2.Canvas.Brush.Color:=RGB(255,255,255);
源代码网推荐          Form1.Image2.Canvas.Ellipse ( FiveChess_Array[i,j].x1-2,
源代码网推荐          FiveChess_Array[i,j].y1-2,FiveChess_Array[i,j].x2-2,FiveChess_Array[i,j].y2-2);
源代码网推荐          FiveChess_array[i,j].state:=1;
源代码网推荐
源代码网推荐          Undo_i:=i;
源代码网推荐          Undo_j:=j;
源代码网推荐
源代码网推荐
源代码网推荐          Form1.Image2.Canvas.Brush.Color:=clred;
源代码网推荐          px1:= FiveChess_Array[i,j].x1 3; 软件开发网 www.mscto.com
源代码网推荐          py1:= FiveChess_Array[i,j].y1 3;
源代码网推荐          px2:= FiveChess_Array[i,j].x2-7;
源代码网推荐          py2:= FiveChess_Array[i,j].y2-7;
源代码网推荐          Form1.Image2.Canvas.Ellipse (px1,py1,px2,py2);
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐          if Judge_Success_on_off(i,j, FiveChess_Array[i,j].state) then
源代码网推荐           begin
源代码网推荐              whitewin:=whitewin 1;
源代码网推荐              if whitewin>1 then
源代码网推荐               Application.MessageBox ("臭棋篓!比鱼头还臭!","胜败乃兵家常事",0)
源代码网推荐              else
源代码网推荐               Application.MessageBox ("白方已胜利!","胜败乃兵家常事",0);
源代码网推荐
源代码网推荐              form1.label9.caption:=inttostr(whitewin);
源代码网推荐              form1.Image2.Enabled :=false;
源代码网推荐              Form1.Timer1.Enabled := false;
源代码网推荐           end;
源代码网推荐
源代码网推荐          Result := true;
源代码网推荐          break;
源代码网推荐       end;
源代码网推荐    end;
源代码网推荐 end;
源代码网推荐
源代码网推荐 function Draw_Qizi_Black(X,Y : Integer): boolean;
源代码网推荐 var
源代码网推荐    i,j,x1,x2,y1,y2 : integer;
源代码网推荐 begin
源代码网推荐    result:=false;
源代码网推荐    for i:=0 to 14 do
源代码网推荐      for j:=0 to 14 do begin
源代码网推荐        if (X> FiveChess_Array[i,j].x1)and(X<FiveChess_Array[i,j].x2)
源代码网推荐          and (y> FiveChess_Array[i,j].y1)and(y<FiveChess_Array[i,j].y2)
源代码网推荐          and (FiveChess_Array[i,j].state=0)  then
源代码网推荐          begin
源代码网推荐            if FiveChess_Array[Undo_i,Undo_j].state<>0 then begin
源代码网推荐              Form1.Image2.Canvas.Brush.Color:=Rgb(255,255,255);
源代码网推荐              Form1.Image2.Canvas.FillRect (Rect(px1,py1,px2,py2));
源代码网推荐            end;
源代码网推荐            Form1.Image2.Canvas.Brush.Color:=RGB(0,0,0);
源代码网推荐            Form1.Image2.Canvas.Ellipse ( FiveChess_Array[i,j].x1,
源代码网推荐               FiveChess_Array[i,j].y1,FiveChess_Array[i,j].x2,FiveChess_Array[i,j].y2);


源代码网推荐            Form1.Image2.Canvas.Brush.Color:=RGB(100,100,100);
源代码网推荐            Form1.Image2.Canvas.Ellipse ( FiveChess_Array[i,j].x1-2,
源代码网推荐            FiveChess_Array[i,j].y1-2,FiveChess_Array[i,j].x2-2,FiveChess_Array[i,j].y2-2);
源代码网推荐
源代码网推荐            FiveChess_array[i,j].state := 2;
源代码网推荐
源代码网推荐            Undo_i:=i;
源代码网推荐            Undo_j:=j;
源代码网推荐
源代码网推荐            Form1.Image2.Canvas.Brush.Color:=clred;
源代码网推荐            px1:= FiveChess_Array[i,j].x1 3;
源代码网推荐            py1:= FiveChess_Array[i,j].y1 3;
源代码网推荐            px2:= FiveChess_Array[i,j].x2-7;
源代码网推荐            py2:= FiveChess_Array[i,j].y2-7;
源代码网推荐            Form1.Image2.Canvas.Ellipse (px1,py1,px2,py2);
源代码网推荐
源代码网推荐
源代码网推荐            if Judge_Success_on_off(i,j, FiveChess_Array[i,j].state) then
源代码网推荐             begin
源代码网推荐                blackwin:=blackwin 1;
源代码网推荐                if blackwin>1 then


源代码网推荐                 Application.MessageBox ("不会吧!难道比鱼头还臭!","胜败乃兵家常事",0)
源代码网推荐                else
源代码网推荐                 Application.MessageBox ("黑方已胜利!","胜败乃兵家常事",0);
源代码网推荐
源代码网推荐                form1.label10.caption:=inttostr(blackwin);
源代码网推荐                form1.Image2.Enabled :=false;
源代码网推荐                Form1.Timer1.enabled := False;
源代码网推荐             end;
源代码网推荐            Result:=true;
源代码网推荐            break;
源代码网推荐          end;
源代码网推荐    end;
源代码网推荐 end;
源代码网推荐
源代码网推荐 procedure TForm1.Image2MouseDown(Sender: TObject; Button: TMouseButton;
源代码网推荐  Shift: TShiftState; X, Y: Integer);
源代码网推荐
源代码网推荐 begin
源代码网推荐      if Online = White then  begin
源代码网推荐       if draw_Qizi_white(X,Y) then
源代码网推荐         Online := Black
源代码网推荐       end
源代码网推荐      else
源代码网推荐         if draw_Qizi_Black(X,Y) then
源代码网推荐          Online:=White;


源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 procedure TForm1.FormCreate(Sender: TObject);
源代码网推荐 begin
源代码网推荐    Online:=white;
源代码网推荐    form1.Label11.Caption :="人不到伤痕累累"#13 "就不会懂得后悔!";
源代码网推荐    Start_Flag:=false;
源代码网推荐    Form1.Image2.Enabled := false;
源代码网推荐   
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 procedure TForm1.BitBtn3Click(Sender: TObject);
源代码网推荐 begin
源代码网推荐     form2.show;
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 procedure TForm1.Timer1Timer(Sender: TObject);
源代码网推荐 begin
源代码网推荐    if online=white then
源代码网推荐      whitetime:=whitetime 1
源代码网推荐    else
源代码网推荐      blacktime:=blacktime 1;
源代码网推荐
源代码网推荐    Form1.Label7.caption:=inttostr(whitetime);
源代码网推荐    Form1.Label8.caption:=inttostr(blacktime);
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 procedure TForm1.Label11MouseDown(Sender: TObject; Button: TMouseButton;
源代码网推荐  Shift: TShiftState; X, Y: Integer);
源代码网推荐 begin
源代码网推荐    if (Button = mbleft) and (ssShift in shift) And (form1.Image2.Enabled = true)then
源代码网推荐      Undo_Run;
源代码网推荐
源代码网推荐    end;

源代码网推荐
源代码网推荐
源代码网推荐 end.
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐
源代码网推荐 //////////////////////////
源代码网推荐
源代码网推荐
源代码网推荐 unit Option;
源代码网推荐
源代码网推荐 interface
源代码网推荐
源代码网推荐 uses
源代码网推荐  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
源代码网推荐  StdCtrls, Buttons;
源代码网推荐
源代码网推荐 type
源代码网推荐  TForm2 = class(TForm)
源代码网推荐   GroupBox1: TGroupBox;
源代码网推荐   RadioButton1: TRadioButton;
源代码网推荐   RadioButton2: TRadioButton;
源代码网推荐   BitBtn1: TBitBtn;
源代码网推荐   BitBtn2: TBitBtn;
源代码网推荐   GroupBox2: TGroupBox;
源代码网推荐   RadioButton3: TRadioButton;
源代码网推荐   RadioButton4: TRadioButton;
源代码网推荐   RadioButton5: TRadioButton;
源代码网推荐   procedure FormCreate(Sender: TObject);
源代码网推荐   procedure BitBtn1Click(Sender: TObject);
源代码网推荐   procedure BitBtn2Click(Sender: TObject);
源代码网推荐  private
源代码网推荐   { Private declarations }
源代码网推荐  public
源代码网推荐   { Public declarations }
源代码网推荐  end;
源代码网推荐
源代码网推荐 var
源代码网推荐  Form2: TForm2;
源代码网推荐
源代码网推荐
源代码网推荐 implementation
源代码网推荐
源代码网推荐
源代码网推荐 uses
源代码网推荐    Main;
源代码网推荐 {$R *.DFM}
源代码网推荐
源代码网推荐 procedure TForm2.FormCreate(Sender: TObject);
源代码网推荐 begin
源代码网推荐     form2.RadioButton1.Checked := true;
源代码网推荐     form2.RadioButton3.Checked := true;
源代码网推荐 end;
源代码网推荐
源代码网推荐 procedure TForm2.BitBtn1Click(Sender: TObject);
源代码网推荐 begin
源代码网推荐    if form2.RadioButton1.Checked = true then
源代码网推荐      Online := White
源代码网推荐    else
源代码网推荐      Online := Black;
源代码网推荐
源代码网推荐    if  form2.RadioButton3.Checked then
源代码网推荐       begin
源代码网推荐          whitewin:=0;
源代码网推荐          blackwin:=0;
源代码网推荐       end ;
源代码网推荐
源代码网推荐
源代码网推荐    Ini_main;
源代码网推荐
源代码网推荐
源代码网推荐    form2.close;
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐 end;
源代码网推荐
源代码网推荐 procedure TForm2.BitBtn2Click(Sender: TObject);
源代码网推荐 begin
源代码网推荐    form2.Close ;
源代码网推荐 end;
源代码网推荐
源代码网推荐 end.


源代码网推荐

源代码网供稿.
网友评论 (0)
会员中心
网络编程
本站推荐
网络编程之精华