1、 操作计算机的两种方法
GUI
Graphical User Interface 图形用户接口
用图形的方式,来显示计算机操作界面,这样更方便更直接。
CLI
Command line User Interface
就是常见的Dos命令行操作;
需要记忆一些常用的命令,操作不直观。
2、 Java为GUI提供的对象都存在java.Awt和JavaxSwing两个包中。
Awt:java.Awt:Abstract Window ToolKit(抽象窗口工具包),需要调用本地系统方法实现功能。属重量级控件
Swing:javax.Swing:在AWT的基础上,建立的一套图形界面系统,其中提供了更多的组建,而且完全由Java实现。增强了移植性,属轻量级控件。
3、 Container:为容器,是一个特殊的组建,该组件中可以通过add方法添加其他组建进来。
4、 布局管理器:容器中的组建的排放方式,就是布局。
常见的布局管理器
FlowLayout 流式布局管理器
从左到右的顺序排列
Panel默认的布局管理器
BorderLayout 边布局管理器
东,南,西,北,中
Frame默认的布局管理器
GridLayout 网格布局管理器
规则的网格
CardLayout 卡片布局管理器
选项卡
GridBagLayout 网格包布局管理器
非规则的矩阵
坐标式布局
5、 事件监听机制
组成:时间源(组件)、事件(Event)、监听器(Listener)、事件处理(引发事件处理后的方式)
监听流程:
1.将监听器组测到事件源
2.有监听器所监听的动作作用于事件源上
3.产生事件对象
4.将事件对象传递给时间处理方式
5.监听器里面有事件处理方式;
事件源:就是awt包或者swing包中的那些图形界面组件;
事件:每一个事件源都有自己特有的对应事件和共性事件
监听器:将可以触发某一个事件的动作(不止一个动作)都已经封装到了监听器中。
以上三者Java都定义好了,直接获取对象来用,我们要做的事情是,对产生的动作进行处理。
6、演示一个Frame创建实例:
public class SwingDemo {
public static void main(String[] args) {
Frame f = new Frame("First Frame");// 创建一个窗体对象
f.setSize(500, 400);// 设置窗体大小
f.setLocation(300, 200);// 设置窗体起始位置
f.setLayout(new FlowLayout());// 定义窗体布局
Button b = new Button("按钮");// 创建一个按钮对象
f.add(b);// 把按钮组建添加到窗体
//创建窗体监听机制,对窗体进行关闭监听
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
super.windowClosing(e);
System.exit(0);//推出系统
}
});
//创建按钮监听机制
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
f.setVisible(true);// 显示窗体
}
}
7、Swing组件简介:
Java1.2引入称为Swing的新的GUI组件库。
Swing包括javax.swing包及其子包。
Swing有一个与平台无关的实现,而且具有一个艺术状态的属性集。
尽管Swing独立于AWT,但它是依照基本的 AWT类实现的。
Swing 组件独立于本地窗口系统。
Swing 组件除了 AbstractButton 类之外都以 J 开头。
Swing 组件是基于 AWT 构建。
包含 AWT 可视化组件的替代组件,也包含复杂组件 - 树和表
设计 GUI 时,都有用于放置可视化组件的主窗口。
Container 对象可用于将组件组合在一起。
容器中的组件根据特定布局排列。
Swing 中的容器有两类:
--- 顶级容器
JFrame:用于框架窗口的类,此窗口带有边框、标题、用于关闭和最小化窗口的图标等。带 GUI 的应用程序通常至少使用一个框架窗口。
JDialog:用于对话框的类。
JApplet:用于使用 Swing 组件的 Java Applet 的类。
---- 中间容器
JPanel:最灵活、最常用的中间容器。
JScrollPane:与 JPanel 类似,但还可在大的组件或可扩展组件周围提供滚动条。
JTabbedPane:包含多个组件,但一次只显示一个组件。用户可在组件之间方便地切换。
JToolBar:按行或列排列一组组件(通常是按钮)。
详细请查看:www.itheima.com