JAVA复习笔记--------GUI



窗体是Java提出的为用户提供人机交互的可视化工具,创建图形化界面也只是对Java锁封装类的应用,其步骤大致为:

1. 创建frame窗体。

2. 对窗体进行基本设置,比如大小,位置,布局。

3. 定义组件。

4. 将组件通过窗体的add方法添加到窗体中。

5. 让窗体显示,通过setVisible(true)。
lJava为GUI提供的对象都存在java.Awt和javax.Swing两个包中。java.Awt: Abstract Window ToolKit (抽象窗口工具包),需要调用本地系统方法实现功能。属重量级控件。javax.Swing:在AWT的基础上,建立的一套图形界面系统,其中提供了更多的组件,而且完全由Java实现。增强了移植性,属轻量级控件。其继承关系图如下:
Container:为容器,是一个特殊的组件,该组件中可以通过add
方法添加其他组件进来。

布局管理器是用来对窗体进行布局的,即:容器中的组件的排放方式常见的布局管理器:FlowLayout(流式布局管理器)从左到右的顺序排列,是Panel默认的布局管理器BorderLayout(边界布局管理器),将组建分别布置于东,南,西,北,中方位, Frame默认的布局管理器GridLayout(网格布局管理器) 规则的矩阵 CardLayout(卡片布局管理器); 选项卡 GridBagLayout(网格包布局管理器)非规则的矩阵
    建立一个简单的窗体时我们用到的Container常用子类:Window Panel(面板,不能单独存在Window常用子类:Frame Dialog简单的窗体创建过程:
    Frame f = new Frame(“my window”);
    f.setLayout(new FlowLayout());
    f.setSize(500,400);//设置窗体大小
    f.setLocation(300,200);//设置窗体出现在屏幕的位置
    f.setVisible(true);
事件监听机制组成体系中含有事件源(component事件(Event)监听器(Listener),事件处理(引发事件后处理方式)四个方面。事件源是awt包或者swing包中的那些图形界面组件。事件:每一个事件源都有自己特有的对应事件和共性事件。监听器:将可以触发某一个事件的动作(不只一个动作)都已经封装到了监听器中。事件监听机制流程图如图:


由图我们可以看到其事件监听机制:首先系统会确定事件源(容器或组件),然后通过事件源对象的addXXXListener()方法将侦听器注册到该事件源上,接着该方法中接收XXXListener的子类对象,或者XXXListener的子类XXXAdapter的子类对象。对侦听事件的处理程序一般用匿名内部类来表示在覆盖方法的时候,方法的参数一般是XXXEvent类型的变量接收。事件触发后会把事件打包成对象传递给该变量(其中包括事件源对象。通过getSource()或者,getComponent()获取)在此处覆盖的不是XXXListener,而是XXXAdapter的子类对象,原因是WindowListener的子类WindowAdapter已经实现了WindowListener接口,并覆盖了其中的所有方法。那么我只要继承自Windowadapter覆盖我需要的方法即可。这样一来我们只需要重写自己需要的监听接口。
    在窗体下的各个组建体系中常见的子体系有菜单继承体系包括:
MenuComponentMenuBarMenuItemMenu。其中菜单包括MenuBarMenuMenuItem

    当我们在制作了一个窗体,如何将这些类制作成想Windows下的exe文件一样可执行呢?在Java中我们可以将其制作成可以双击执行的jar包。具体步骤如下:

1.将多个类封装到了一个包(package)中。

2.定义一个jar包的配置信息。定义一个文件a.txt 。文件内容内容为: Main-Class:(空格)包名.类名(回车)。

3.打jar包。jar -cvfm my.jar a.txt 包名。

4.通过winrar程序进行验证,查看该jar的配置文件中是否有自定义的配置信息。

5.通过工具--文件夹选项--文件类型--jar类型文件,通过高级,定义该jar类型文件的打开动作的关联程序。jdk\bin\javaw.exe -jar。

你可能感兴趣的:(Java)