记一次JAVA实训(开发连连看小游戏)(三)

换了个老师,这个老师让人有点小无语

直接给全部代码给你,最基本的实现思路都不说

我只好一个一个函数去找度娘了,之后写了些注释。

相比之前,现在加的功能有:游戏开始时有登录框,要求输入用户名和密码;有进度条,并在消除的同时加时间;重置按钮等


把之前的GameData.java  文件中的各功能分成模块,再进行调用

/**
 * 显示
 * @author miemie
 *
 */
public class MainFrame extends JFrame {
	private static final long serialVersionUID = 1L;
	private static final int height = 400;
	private static final int width = 400;

	JButton button1 = null;
	JButton button2 = null;
	
	GameFile gameFile= new GameFile();
	final GameData gameData = new GameData();
	JButton[] buttons = new JButton[GameData.rows * GameData.cols];
	
	//分数
	JLabel lblScroe = new JLabel();
	int score=gameFile.readScore();
	//时间
	final int timeLimit = 20;
	int timeLeft = timeLimit;
	

	public MainFrame() {
		Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

		//this.resize(width + 17, height + 38);//过时 
		this.setBounds(1, 1, width + 17, height + 38);
		this.setLocation((screenSize.width - width) / 2,
				(screenSize.height - height) / 2);
		this.setTitle("连连看");
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		// this.setLayout(null);
		initButtons();//
     	        showImage();
		initPane();
		initTimePane();
	}

以下为同个页面中的其他模块

        /**
	 * 面板,显示在窗口上方
	 */
	private void initPane() {
		JPanel scorePane = new JPanel(new FlowLayout());
		scorePane.add(new JLabel("玩家:"+UserEmpty.username));
		scorePane.add(new JLabel("    "));
		scorePane.add(new JLabel("得分:"));
		lblScroe.setText("" + score);
		
		JButton btnResort = new JButton("重排");
		btnResort.addActionListener(new ActionListener() {
                        //因为没有实现ActionListener接口,重写方法
			@Override
			public void actionPerformed(ActionEvent arg0) {
				// TODO 自动生成的方法存根
				gameData.shuffle();  //打乱数据
				showImage();	//再次显示所有图片(重置data中的数字)
				timeLeft=timeLeft-10;
				
			}
		});
		scorePane.add(lblScroe);
		scor
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值