飞机大战之-生成窗口

首先新建一个项目起名为飞机大战 - > 然后在该项目下新建一个视图的包 - > 在视图的包下新建一个生成窗口的类,起名为BaseFrame。

我们的BaseFrame是继承于JFrame的一个子类。
所以代码如下:

import javax.swing.JFrame;
public class BaseFrame extends JFrame{
}

由于我们要使用JFrame,所以我们需要导入javax.swing.Jframe这个包。

既然我们想生产一个窗口,那么为了代码的可读性,我们新建两个窗口宽和高的静态常量。

package view;

import javax.swing.JFrame;

public class BaseFrame extends JFrame{

	public static int frameWidth = 512, 
					  frameHeight = 768;
}

然后我们用setBounds把这个窗口放在100,0的位置
setBounds()接收四个int参数,前两个坐标,后两个是宽和高

package view;

import javax.swing.JFrame;

public class BaseFrame extends JFrame{

	public static int frameWidth = 512, 
					  frameHeight = 768;
	
	
	public BaseFrame()
	{
		super("飞机大战");
		setBounds(100, 0, frameWidth, frameHeight);
	}
}

java中新建的窗口默认不显示, 我们还需要一条语句,
setVisible(true);

package view;

import javax.swing.JFrame;

public class BaseFrame extends JFrame{

	public static int frameWidth = 512, 
					  frameHeight = 768;
	
	public BaseFrame()
	{
		super("飞机大战");
		setBounds(100, 0, frameWidth, frameHeight);
		setVisible(true);
	}
}

还有一个小知识点,我们还需要修改页面布局,否则我们以后添加飞机都按默认布局添加了。
setLayout(null); 设置布局为空。
我们以后添加什么组件,就可以用,setBounds();来控制组件的位置了。

package view;

import javax.swing.JFrame;

public class BaseFrame extends JFrame{

	public static int frameWidth = 512, 
					  frameHeight = 768;
	
	
	public BaseFrame()
	{
		super("飞机大战");
		setBounds(100, 0, frameWidth, frameHeight);
		
		setLayout(null);
		
		setVisible(true);
	}
	
	
}

然后我们在view包中在新建一个Main类,Main类是我们程序的入口,现在我们在Main方法中添加一个我们的窗口。

package view;

public class Main {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		new BaseFrame();
	}

}

点击运行,成功弹出了一个灰灰的窗口。

还有一点要完善的就是我们的窗口得关闭哇,不然打开点击关闭没反应。(实际上没这条语句也有反应。这里我觉得可能是系统自动给我添加了)
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

package view;

import javax.swing.JFrame;

public class BaseFrame extends JFrame{

	public static int frameWidth = 512, 
					  frameHeight = 768;
	
	
	public BaseFrame()
	{
		super("飞机大战");
		setBounds(100, 0, frameWidth, frameHeight);
		
		setLayout(null);
		
		setVisible(true);
	}
	
	
}

附加:
如果我们想控制窗口在屏幕中的位置,直接输入坐标不是一个好的选择。我们可以结合窗口宽高的常量和一个函数,这个函数可以返回我们窗口大小

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

然后我们利用自己定义的常量窗口宽高,和screenSize来调整窗口的位置。

明天在写添加背景动画吧。

发布了24 篇原创文章 · 获赞 1 · 访问量 1461

猜你喜欢

转载自blog.csdn.net/qq_43077318/article/details/104622934