private a:array[1..8,1..8]of integer; tt:integer; q,c:Tbitmap; procedure prt; function pd(i,j:integer):boolean; procedure hsu(i:integer); protected procedure Execute; override; public constrUCtor create(flag:boolean); end;
var dstep:boolean; 解决冲突的具体函数
function pd(i,j:integer):boolean; var i1,j1:integer; begin pd:=true; if i<>1 then begin for i1:=1 to i-1 do for j1:=1 to 8 do if a[i1,j1]=1 then begin if j1=j then pd:=false else if abs(i1-i)=abs(j1-j)then pd:=false end end end; 棋盘与棋子的图片(需要用画图程序作出)、生成、装入及显示过程如下:
procedure TForm1.PaintBox1Click(Sender: TObject); var q:tbitmap; begin q:=tbitmap.create; q.loadfromfile('e:\八皇后\backimg.bmp'); paintbox1.canvas.Draw(0,0,q); end; end. 组件设置