拼图游戏java(一)基本界面的实现

学了3*3的拼图游戏,记录一下顺便理下思路

工具  eclipse

该拼图游戏为窗体程序,需要new 一个窗体对象,并设置窗体的相关属性

需要设置窗体的大小,位置,可见性 setVisiable ,以及点击关闭窗体程序

package game;

import java.awt.BorderLayout;
import java.awt.Color;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class GameFrame {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        JFrame frame = new JFrame();
        frame.setTitle("拼图游戏");
        frame.setSize(310,340);
        //设置窗体相对谁进行定位,若为null,则相对电脑显示屏进行定位,并且居中显示
        frame.setLocationRelativeTo(null);
        frame.setResizable(false);//设置窗体不可改变大小
        //窗体关闭时结束程序
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   
        frame.setVisible(true);//设置窗体可见

    }

}

将面板类与业务逻辑写入一个类中

首先定义

public class GamePanel extends JPanel {
    private int n;//n代表几乘几    
    private JButton[] btns;//按钮代表拼图中的每个移动的格子
    private ImageIcon[] icons;//按钮中的图片
    
    public GamePanel(){//构造方法,在new对象时自动调用一次
        n = 3;
        setLayout(new GridLayout(n,n));//使用网格布局
        
        btns = new JButton[n*n];//初始格子数(n*n)
        icons = new ImageIcon[n*n];
        //两道初始化,先初始化容器数量,再初始化内容
        //初始化“容器”中各个图片
        for(int i = 0;i             icons[i] = new ImageIcon("pic_"+i+".jpg");
        }
        icons[icons.length-1] = null;//最后一个为空
       //给每个按钮指定图片,此时按钮上的图片是固定且正确的
        for(int i = 0;i             btns[i] = new JButton(icons[i]);//创建按钮时指定图片
            add(btns[i]);

        }
        
    }
    

}
 

你可能感兴趣的:(小游戏)