1、 Java现在有了两套GUI(图形用户界面)类库,即最初的AWT和一套被称为Java基础类或Swing的新型GUI。
2、 AWT构建在所属平台本地图形系统的基础之上。缺点:
1) 由于AWT在不同的操作系统上使用的组件不同,因此只能使用这些组件公共的功能。
2) 在AWT下很难创建就JavaBean之类的自定义组件,因为必须为运行JVM的每种操作系统都编写相应的组件。在AWT中没有中间件。
3) 每种图形子系统支持的对象不同,而且每种对象提供的功能也不同。
3、 Swing实际上是两种互补产品的合二为一,一方面,Swing像是AWT的一种重构版;另一方面,Swing又是JvaGUI类的下一逻辑版本。
4、 Swing组件以模型、视图和控制器(MVC)的设计模式为基础构建而成。
5、 Swing的步骤:
1) 建立容器;
2) 建立组件;
3) 将组件添加到容器;
4) 设置布局。
6、 容器类就是容纳其他图形对象的类。主要的容器类有:
1) Japplet:种在游览器中运行的Java的容器。
2) JFame:带有标题和边框的顶级窗口。
3) Jpanel:Panel就是一个矩形区域,其中可以附加其他的组件,包括其他的Panel上。
4) JScrollPANE:这是一种可以自动实现水平和垂直流动条的Panel类。
5) Jdialog:一种弹出窗口。
7、 Jframe类是创建Swing程序时最常用的容器。即使是在创建Jpanel和JscrollPane时,通常也会把这些类放在Jframe中来显示。
8、 所有的Swing组件都继承了javax.swing.JComponent的功能。该Jcomponent类实际上派生自java.awt.Container类。
9、 Javax.swing.Jpanel类是一个普通的矩形容器,但是缺少Jframe的标题和边框。它的默认行为是实现从左到右放置添加的组件,并且提供包装和双倍缓冲区。
10、 JscrollPane最吸引人的地方是具有可选的垂直滚动条和水平滚动条。
12、 JTextField是一种包含单行文本数据项的组件。
13、 JRadioButton类用于单选按钮,该类实例生成动作和项目事件。
14、 JcomboBox类用于组合框,包含一个下拉列表。
15、 Jlist类用于显示项目列表。
16、 可选用的布局管理器有:BorderLayout、FlowLayout、CardLayout和GirdLayout。
1)BorderLayout是Jframe容器的默认布局管理器,称为边界布局管理器。它将组件放置在东、南、西、北、中五个区域中。一般是先创建Panel对象并放入按钮和文本字段之类的GUI对象。接下来,把这些Panel对象放在布局管理器的某个区域中去。中间的最大(权利最大)。
2)FlowLayout称为流布局管理器,是所有布局管理器中最简单的。当组件放入容器 时,会被按照从左至右,从上往下的方式安置(默认是中容器中间开始)。
3)GirdLayout称为网格布局管理器,它把容器划分为网格,以便可以再行和列中放置组件。GirdLayout中的每一个组件都由相同的宽度和高度。
4)CardLayout称为卡片布局管理器,它将容器中的每个组件看做一张卡片,一次只能看到一张卡片。