java基于swing实现的五子棋游戏代码
这篇文章主要介绍了java基于swing实现的五子棋游戏代码,主要涉及图形界面与数组的用法,有不错的参考借鉴价值,需要的朋友可以参考下
本文实例讲述了java基于swing实现的五子棋游戏代码。分享给大家供大家参考。
主要功能代码如下:
复制代码 代码如下:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Main extends JFrame implements ActionListener{
private static final long serialVersionUID = 1L;
JButton[][] point=new JButton[40][40];
int[][] state=new int[40][40];
int[][] value=new int[40][40];
int[] place=new int[2];
public Main(){
this.setTitle("五子棋");
this.setBounds(100,10,1000,1000);
this.setLayout(new GridLayout(30,30));
int i,j;
for(i=0;i<=39;i++){
for(j=0;j<=39;j++){
state[i][j]=0;
value[i][j]=0;
}
}
for(i=5;i<=34;i++){
for (j=5;j<=34;j++){
point[i][j]=new JButton("");
this.add(point[i][j]);
point[i][j].addActionListener(this);
}
}
this.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
int i,j;
for(i=5;i<=34;i++){
for(j=5;j<=34;j++){
if(e.getSource()==point[i][j]){
point[i][j].setBackground(Color.RED);
state[i][j]=1;
point[i][j].setEnabled(false);
value[i][j]=0;
}
}
}
for(i=5;i<=34;i++){
for(j=5;j<=34;j++){
value[i][j]=value(i,j);
if(((state[i][j]==1)&&(state[i][j+1]==1)&&(state[i][j+2]==1)&&(state[i][j+3]==1)&&(state[i][j+4]==1))||
((state[i][j]==1)&&(state[i+1][j]==1)&&(state[i+2][j]==1)&&(state[i+3][j]==1)&&(state[i+4][j]==1))||
((state[i][j]==1)&&(state[i-1][j+1]==1)&&(state[i-2][j+2]==1)&&(state[i-3][j+3]==1)&&(state[i-4][j+4]==1))||
((state[i][j]==1)&&(state[i+1][j+1]==1)&&(state[i+2][j+2]==1)&&(state[i+3][j+3]==1)&&(state[i+4][j+4]==1))){
JOptionPane.showMessageDialog(null,"你太厉害了吧,我打不过你");
}
- 上一篇:java实现的满天星效果实例
- 下一篇:Java基于swing实现的弹球游戏代码
精彩图集
精彩文章