GUI
一、GUI概述
GUI(Graphical User Interface,图形化用户界面),是java中单独的一门技术。
CLI(Command line user Interface,命令行用户接口),就是常见的Dos操作。
Java为GUI提供的对象都存在于java.Awt和javax.Swing两个包中。
Awt(Abstract Window Toolkit,抽象窗口工具包),需要调用本地系统方法实现功能。需要依赖平台。属于重量级控件。(意思就是和系统依赖性较强)。
Swing:在Awt的基础上,继承于Awt并复写其许多方法,提供了更多的组件,完全由java实现,增强了可移植性。属于轻量级控件。
二、GUI体系图
三、布局
在窗体(或者说是容器)中如何排放组件,这就是布局。
常见的布局管理器,也就是布局对象:
FlowLayout(流式布局管理器):从左到右的顺序排列,Panel默认的布局管理器,默认居中。
BorderLayout(边界式布局管理器):东南西北中,Frame默认的布局管理器,不设置位置的话,默认会填充掉Frame整个窗口。
GridLayout(网格式布局管理器):规则的矩阵
GridBagLayout(网格包布局管理器):非规则的矩阵。
CardLayout(卡片式布局管理器):选项卡。
最牛逼的布局是坐标式布局!!!
可以在窗体中加入多个面板Panel,以操作不同的布局。
四、Frame
图形化界面是由另一个线程控制的。
Frame f=new Fram(“my awt”);//创建一个不可见的Frame
f.setSize(length,height);//设置Frame窗口的长高,一般第一个参数是横坐标,第二个参数是纵坐标。
//f.setLocation(x,y);//设置Frame窗口左边顶点距离主窗口的横纵距离。x,y
f.setLayout(new FlowLayout());
Button b=new Button(“我是一个按钮”);
f.add(b);//将按钮用容器的方法添加进来。
f.setVisible(true); //设置可见
创建步骤:(1)创建Fram窗体;(2)对窗体进行基本设置,比如大小,位置,布局;(3)定义组件;(4)将组件通过窗体的add方法添加到窗体中;(5)让窗体显示
五、事件监听机制
首先有被操作的对象——事件源。
事件监听机制流程图:
特点:事件源,事件,监听器,处理方式。
事件源就是awt包或者swing包中的那些图形界面组件
事件:每一个事件源都有自己的特有的对应事件和共性事件(有些事件源具有共同的事件)。
监听器:将可以触发某一个事件的动作(不止一个)都已经封装到了监听器中。
以上三者,在java中都已经定义好了,直接获取其对象来用就可以了。
我们要做的事情是,对产生的动作进行处理。
六、例子:对窗体进行关闭处理。
分析:对窗体进行关闭处理,需要对窗体添加监听器,当点击关闭时,触发监听器里面的相应事件。
七、Action事件
为了让按钮具备退出程序的功能,我们需要了解:按钮就是事件源,那么选择哪个监听器呢?
通过关闭窗体示例了解到,想要知道哪个组件具备什么样的特有监听器,需要查看该组件对象的功能。
Frame------addWindowListener-------WindowAdapter
Button------addActionListener----- ActionListener------没有适配器接口即XXXAdapter,一般的监听器接口都有适配器。
八、鼠标事件,键盘事件(共性事件,一般的组件都具备)
九、练习:列出指定目录中指定内容。
十、对话框Dialog
十一、练习:打开文件,保存文件。
需求:做一个窗口,能够实现打开文件,保存文件的功能。
保存文件:
十二、jar包双击执行