目录
技术实现:
1.初始化游戏窗口;
1.1 什么是窗口:
1.2 Swing
1.3 JFrame创建窗口:
1.3.1创建窗口的逻辑
1.3.2.设置简单的页面
1.3.3.优化
1.3.4.设置标题
1.4 创建游戏窗口
技术实现:
1.初始化游戏窗口;
2.初始化游戏界面;
3.初始化游戏的说明面板;
4.随机生成下落方块;
5.绘制方块;
6.清除方块;
7.清楚某一行方块,上方方块掉落;
8.刷新清除某一行方块后的界面;
9.键盘控制下落方块的移动方向,形状;
10.判断方块能否下落;
11.实现方块下落速度的变化;
12.游戏的暂停;
1.初始化游戏窗口;
1.1 什么是窗口:
简而言之就是应用的界面,可以通过“最小化” “最大化”来改变窗口大小,在游戏界面一般不允许改变其大小;
1.2 Swing
这涉及到Swing的初级应用。
Swing是一个为Java设计GUI(图形化用户界面)的工具包,位于Javax.swing包中,为程序员使用。组件采用MVC设计,
此外,Swing是轻量级的界面库,JavaFX是在JDK1.8使用的新的的界面库,SWT是exlipse使用的界面库,Android适用于手机,平板的界面,Harmony华为鸿蒙使用的ui;
Swing是一种比较老旧的技术,而且目前主流开发也不是界面设计,我们学习Swing的目的是掌握程序设计的过程和逻辑,而不仅仅是学习Swing。
下面,我们来学习JFrame。
1.3 JFrame创建窗口:
Java提供的JFrame类的实质是一个底层容器,也就是窗口,其他组件必须添加到底层容器中,配合操作系统进行信息的交互;
我们可以使用JFrame类或其子类来创建一个窗口;
1.3.1创建窗口的逻辑
1.创建窗口;
2.设置窗口大小位置等;
3.设置窗口的关闭方式‘
1.3.2.设置简单的页面
下面的代码设置了界面的大小、位置以及界面是可见的;
//界面设置学习
class JFrameDemo{public static void main(String[] args) {//创建对象JFrame jframe=new JFrame();//设置界面大小jframe.setSize(900,600);//设置界面位置jframe.setLocation(0,0);//左上角为0,0//可见不可见jframe.setVisible(true);}
}
1.3.3.优化
使用set.Bounds方法设置界面的大小和位置;
class JFrameDemo{public static void main(String[] args) {//创建对象JFrame jframe=new JFrame();//将设置界面大小与位置合为一处jframe.setBounds(0,0,400,600);//可见不可见jframe.setVisible(true);//设置窗口的关闭方式//jframe.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);//点击不可关闭jframe.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//点击关闭,推荐使用}
}
1.3.4.设置标题
setTitle方法可以设置其标题,但我们通常在在创建对象的同时输入标题。
class JFrameDemo{public static void main(String[] args) {//创建对象JFrame jframe=new JFrame();//将设置界面大小与位置合为一处jframe.setBounds(0,0,400,600);//设置标题jframe.setTitle("真好玩!");//可见不可见jframe.setVisible(true);//设置窗口的关闭方式//jframe.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);//点击不可关闭jframe.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//点击关闭,推荐使用}
}
class JFrameDemo{public static void main(String[] args) {//创建对象JFrame jframe=new JFrame("真好玩!");//将设置界面大小与位置合为一处jframe.setBounds(0,0,400,600);//可见不可见jframe.setVisible(true);//设置窗口的关闭方式//jframe.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);//点击不可关闭jframe.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//点击关闭,推荐使用}
}
1.4 创建游戏窗口
了解完上面的知识,我们再看看下面的代码。
下面的程序是执行初始化游戏窗口的,我们通过this.使用本类JFrame的方法创建窗口;
package ComputerGame;
import javax.swing.*;
//这是窗口类
public class Window extends JFrame {//成员方法——初始化游戏窗口public void initWindow(){//设置窗口大小this.setSize(600,800);//也可以设置初始位置和窗口大小//this.setBounds(0,0,600,800);//设置窗口是否可见this.setVisible(true);//设置窗口居中this.setLocationRelativeTo(null);//设置释放窗体this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//EXIT:出口,通道//设置窗口大小不可变this.setResizable(false);//设置标题this.setTitle("俄罗斯方块");}public Window(){initWindow();}public static void main(String[] args) {Window w=new Window();}
}
窗口居中显示: