GUI

GUI概述

GUI:Graphical User Interface(圖形用戶接口)
用圖形的方式,來顯示計算機操作的界面,這樣更方便更直觀。

CLI:Command line User Interface (命令行用戶接口)
就是常見的Dos命令行操作,需要記憶一些常用的命令,操作不直觀。

Java為GUI提供的對象都存在java.Awtjavax.Swing兩個包中。

Awt和Swing

java.Awt:Abstract Window ToolKit (抽象窗口工具包),需要調用本地系統(tǒng)方法實現(xiàn)功能,屬重量級控件。

javax.Swing:在AWT的基礎上,建立的一套圖形界面系統(tǒng),其中提供了更多的組件,而且完全由Java實現(xiàn)。增強了移植性,屬輕量級控件。

組件繼承關系

組件繼承關系圖

Container:為容器,是一個特殊的組件,該組件中可以通過add 方法添加其他組件進來。

布局管理器

容器中的組件的排放方式,就是布局。

常見的布局管理器:

  1. FlowLayout(流式布局管理器)
    從左到右的順序排列。
    Panel默認的布局管理器。
  2. BorderLayout(邊界布局管理器)
    東,南,西,北,中
    Frame默認的布局管理器。
  3. GridLayout(網(wǎng)格布局管理器)
    規(guī)則的矩陣
  4. CardLayout(卡片布局管理器)
    選項卡
  5. GridBagLayout(網(wǎng)格包布局管理器)
    非規(guī)則的矩陣

建立一個簡單的窗體

Container常用子類:Window Panel(面板, 不能單獨存在)
Window常用子類:Frame Dialog

事件監(jiān)聽機制

時間監(jiān)聽機制的組成:
事件源(組件)
事件(Event)
監(jiān)聽器(Listener)
事件處理(引發(fā)事件后處理方式)

處理流程:

  1. 確定事件源(容器或組件)
  2. 通過事件源對象的addXXXListener()方法將偵聽器注冊到該事件源上
  3. 該方法中接收XXXListener的子類對象,或者XXXListener的子類XXXAdapter的子類對象(一般用匿名內(nèi)部類表示
  4. 在覆蓋方法的時候,方法的參數(shù)一般是XXXEvent類型的變量接收
  5. 事件觸發(fā)后會把事件打包成對象傳遞給該變量。(其中包括 事件源對象。通過getSource()或者,getComponent()獲?。?/li>
組件.addXXXListener(new XXXAdapter){
    public void methodName(XXXEvent e){}
}
事件監(jiān)聽機制流程圖

例程

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容