扫雷游戏源代码java 扫雷java程序( 三 )


btns=new JButton[row*col];
p2=new JPanel();
p2.setLayout(new GridLayout(row,col,0,0));
for(int i=0;irow*col;i++){
btns[i]=new JButton("");
btns[i].setMargin(new Insets(0,0,0,0));
btns[i].setFont(new Font(null,Font.BOLD,25));
btns[i].addActionListener(this);
btns[i].addMouseListener(new NormoreMouseEvent());
p2.add(btns[i]);
}
contentPane.add(p2,BorderLayout.CENTER);
//setSize(33*col,33*row+80);
this.pack();
for(int i=0;irow*col;i++){
btns[i].setText("");
btns[i].setEnabled(true);
}
for(int i=0;irow+2;i++){
for(int j=0;jcol+2;j++){
a[i][j]=0;
}
}
}
if(e.getSource()==btn){
timer.start();
b=bon;
b3.setText("");
//System.out.println(bon);
//清空
for(int i=0;irow*col;i++){
btns[i].setText("");
btns[i].setEnabled(true);
}
for(int i=0;irow+2;i++){
for(int j=0;jcol+2;j++){
a[i][j]=0;
}
}
//产生随机数
for(int i=0;ibon;i++)
{int p=1;
int m=(int)(Math.random()*row*col);
while(p==1){
int l=1;
int j;
for( j=0;jil==1;j++){
if(a1[j]==m){
m=(int)(Math.random()*row*col);
l=0;
}
}
if(j==i){
a1[i]=m;
p=0;
}
}
}
b1.setText(bon+"");
b2.setText("0");
//布雷
for(int i=0;ibon;i++){
int x=(a1[i]/col+1);
int y=(a1[i]%col+1);
a[x][y]=100;
}
for(int i=0;irow+2;i++){
for(int j=0;jcol+2;j++){
if(i==0||j==0||i==row+1||j==col+1){
a[i][j]=0;
}
}
}
for(int i=1;i=row;i++){
for(int j=1;j=col;j++){
if(a[i][j]!=100){
for(int l=j-1;l=j+1;l++){
if(a[i-1][l]==100){
a[i][j]++;
}
if(a[i+1][l]==100){
a[i][j]++;
}
}
if(a[i][j-1]==100){
a[i][j]++;
}
if(a[i][j+1]==100){
a[i][j]++;
}
}
}
}
}
if(e.getSource()==timer)
{
String time=b2.getText().trim();
int t=Integer.parseInt(time);
//System.out.println(t);
if(t=600){
timer.stop();
}else{
t++;
b2.setText(t+"");
}
}
for(int i=0;icol*row;i++){
if(btns[i].getText()!="

推荐阅读