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