前言需要


本篇文章开始依据尚学堂马士兵老师的教学视频:坦克大战,进行开展学习

本篇文章目标

  • 产生窗口
  • 增加不容许挪动窗口大小的解决
  • 增加敞开窗口的事件处理

一、创立窗口

创立TankClient类,并应用继承Frame类的形式,应用相干办法

public class TankClient extends Frame {    //定义窗口办法    public void lauchFrame(){        //设置窗口呈现的地位        this.setLocation(400,300);        //设置窗口的宽度高度        this.setSize(800,600);        setVisible(true);    }}

接下来运行main 办法

public static void main(String[] args) {    TankClient client = new TankClient();    //关上窗口    client.lauchFrame();}

二、增加不容许挪动窗口大小的解决

运行后发现窗口能够挪动调整大小,这样缩放窗口大小会影响很大

所以咱们要增加不容许挪动窗口的事件处理

//定义窗口办法public void lauchFrame(){    //设置窗口呈现的地位    this.setLocation(400,300);    //设置窗口的宽度高度    this.setSize(800,600);    setVisible(true);    //不容许随便调整窗口大小的形式    this.setResizable(false);}
public void setResizable(boolean resizable)

设置此窗体是否可由用户调整大小。

参数为boolean类型:

resizeable值为true时,示意生成的窗体能够自在扭转大小;

resizeable值为false时,示意生成的窗体大小是由程序员决定的,用户不能够自在扭转该窗体的大小

三、增加敞开窗口事件处理

//定义窗口办法public void lauchFrame(){    //设置窗口呈现的地位    this.setLocation(400,300);    //设置窗口的宽度高度    this.setSize(800,600);    setVisible(true);    //采纳匿名类的形式敞开窗口    this.addWindowListener(new WindowAdapter() {        @Override        public void windowClosing(WindowEvent e) {            //失常解决示意失常退出            System.exit(0);        }    });    //不容许随便调整窗口大小的形式    this.setResizable(false);}
这个是示意在窗口增加一个Windows事件音讯,目标是咱们敞开窗口的时候能够失常的退出,其实这段语句等价于

frame.setDefaultCloseOptration(JFrame.EXIT_ON_CLOSE);

在语句中new WindowAdapter示意新的创立WindowAdapter的对象

两头是对一个函数也就是windows窗口敞开函数进行重写

接下来,咱们就能够运行发现无奈批改窗口大小,也能够失常敞开了

参考资料


尚学堂:坦克大战(马士兵老师)