diff --git a/src/GoBangframe.java b/src/GoBangframe.java new file mode 100644 index 0000000..925285a --- /dev/null +++ b/src/GoBangframe.java @@ -0,0 +1,129 @@ + +//构建五子棋界面GoBangframe类 + +import javax.swing.JFrame; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextArea; +import javax.swing.JTextField; +import javax.swing.JButton; +import javax.swing.JComboBox; +import java.awt.Dimension; +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; +import java.awt.Font; +import java.awt.Graphics; +import java.awt.event.ActionListener; +import java.awt.event.MouseListener; +import java.util.ArrayList; + +public class GoBangframe extends JPanel implements GoBangconfig{ + public Graphics g;//定义一支画笔 + public int[][] isAvail=new int [19][19];//定义一个二维数组来储存棋盘的落子情况 + public ArrayListChessPositonList=new ArrayList();//保存每一步的落子情况 + public int turn=1; + JTextArea textA = new JTextArea("点击:开始新游戏(才能开始!!!)",10,15); + JTextArea textB = new JTextArea(" 设计人:xxx",0,15); + Font f1= new Font("宋体",Font.BOLD,15); + Font f2= new Font("宋体",Font.BOLD,15); + + //主函数入口 + + public static void main(String args[]) { + GoBangframe gf=new GoBangframe();//初始化一个五子棋界面的对象 + gf.initUI();//调用方法进行界面的初始化 + } + + public void initUI() { + //初始化一个界面,并设置标题大小等属性 + JFrame jf=new JFrame(); + jf.setTitle("五子棋"); + jf.setSize(927,800); + jf.setLocationRelativeTo(null); + jf.setDefaultCloseOperation(3); + + jf.setLayout(new BorderLayout());//设置顶级容器JFrame为框架布局 + + Dimension dim1=new Dimension(150,0);//设置右半部分的大小 + Dimension dim3=new Dimension(800,0);//设置左半部分的大小 + Dimension dim2=new Dimension(140,40);//设置右边按钮组件的大小 + + //实现左边的界面,把GoBangframe的对象添加到框架布局的中间部分 + this.setPreferredSize(dim3);//设置下棋界面的大小 + this.setBackground(Color.GRAY);//设置下棋界面的颜色 + //这里的话直接把左边的画板添加上去,指明是在框架布局的中间版块 + //若放在其他版块会有一些小问题 + jf.add(this,BorderLayout.CENTER);//添加到框架布局的中间部分 + + //实现右边的JPanel容器界面 + JPanel jp=new JPanel(); + jp.setPreferredSize(dim1);//设置JPanel的大小 + jp.setBackground(Color.white);//设置右边的界面颜色为白色 + jf.add(jp,BorderLayout.EAST);//添加到框架布局的东边部分 + jp.setLayout(new FlowLayout());//设置JPanel为流式布局 + + //添加作者 + textB.setFont(f2); + jp.add(textB); + + //接下来我们需要把按钮等组件依次加到那个JPanel上面 + //设置按钮数组 + String[] butname= {"开始新游戏","悔棋","认输"}; + JButton[] button=new JButton[3]; + + //依次把三个按钮组件加上去 + for(int i=0;i