




已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
JAVA GUI,Object,Dimension,Font,FontMetrics,Color,Graphics,Component,Container,LayoutManager,Panel,Window,JComponent,Applet,Frame,JDialog,JApplet,JFrame,Dialog,*,1,包java.awt中的類,包javax.swing中的組件,JPanel,Swing GUI組件,組件 Jcomponent 抽象類 用戶界面 容器類 盛裝其他GUI組件 Jpanel不可見,可嵌套。可看作是畫布 GUI輔助類 用來描述GUI組件的屬性,例如圖形環(huán)境、顏色、字體及大小等。,布局管理器的屬性 Color類 Font類 Swing GUI組件的一般特性,java.awt.Component,-font:java.awt.Font -background:java.awt.Color -foreground:java.awt.Color -preferredSize:java.awt.Dimension -visible:boolean,+getWidth():int +getHeight():int +getX(): int +getY(): int,java.awt.Container,+add(comp:Component): Component +add(comp:Component,index:int): Component +remove(comp:Component): void +getLayout():LayoutManager +setLayout(l:LayoutManager):void +paintComponents(g: Graphics): void,javax.awt.Swing.JComponent,-toolTipText:String +border: javax.swing.border.Border,圖形,Graphics類,事件處理機制-委托事件處理,圖形界面程序 (一個類),監(jiān)聽器類 (含事件處理器),監(jiān)聽器對象 (含事件處理器),實例化,注冊,外 部 動 作,事件 對象,產(chǎn)生并傳遞事件對象,接收事件對象,激活事件處理器,實現(xiàn)預(yù)定功能,事件源 (例如一個按鈕),含有,事件處理實例:關(guān)閉窗口,圖形界面程序 (TestFrame),窗口監(jiān)聽器類 MyWindowListener (含關(guān)閉窗口 事件處理器),窗口監(jiān)聽器對象 (含關(guān)閉窗口 事件處理器),實例化,注冊,單 擊 關(guān) 閉 按 鈕,事件 對象 e,產(chǎn)生并傳遞窗口事件對象 WindowEvent e,接收事件對象e,激活事件處理器,實現(xiàn)關(guān)閉窗口功能。,事件源 窗口對象fr,含有,再論事件處理機制,事件、事件監(jiān)聽器接口、事件監(jiān)聽器類: 每一類事件有一個相應(yīng)的事件監(jiān)聽器接口,該接口定義了接收和處理事件的抽象方法。實現(xiàn)該接口的類,就是監(jiān)聽器類。其對象可作為監(jiān)聽器對象向相應(yīng)的組件注冊。 事件的類名通常為:XxxEvent 對應(yīng)的事件監(jiān)聽器接口名通常為:XxxListener 一個監(jiān)聽器接口定義了一種以上的抽象事件處理方法(事件處理器)。 事件監(jiān)聽器類實現(xiàn)事件監(jiān)聽器接口,其類名可以由我們自己取。事件監(jiān)聽器類需要我們自己編寫。 一個組件可以注冊一個或多個監(jiān)聽器對象,事件對象只向已注冊的監(jiān)聽器對象報告事件的發(fā)生。,事件、接口、適配器與事件處理方法對應(yīng)表,事件、接口、適配器與事件處理方法對應(yīng)表,內(nèi)部類(Inner Class),內(nèi)部類也稱為嵌套類(Nested Class),是指被定義于其他類體中的類,其他類則稱為內(nèi)部類的封裝類。 內(nèi)部類分為靜態(tài)內(nèi)部類和非靜態(tài)內(nèi)部類兩種。用static修飾符聲明的內(nèi)部類為靜態(tài)內(nèi)部類。,內(nèi)部類的特征(1), 內(nèi)部類的類名不能與其封裝類的類名相同。 內(nèi)部類可以不加任何限制地訪問其封裝類的所有成員要素(包括private類型的成員、靜態(tài)成員及實例成員)。 非靜態(tài)內(nèi)部類不能在自己類體中定義static成員。 靜態(tài)內(nèi)部類可以定義自己的static成員,但不能直接訪問其封裝類的實例變量或?qū)嵗椒?,只能直接訪問其封裝類的靜態(tài)成員;但可以通過定義對象來引用其封裝類的實例成員。,內(nèi)部類的特征(2), 可以用abstract關(guān)鍵字將內(nèi)部類定義為抽象類,也可以用protected或private訪問修飾符修飾內(nèi)部類。 內(nèi)部類不能在其封裝類的靜態(tài)方法(如main方法)中使用。 內(nèi)部類不僅可以定義在其他類中,還可以定義在方法體中,甚至可以定義在語句塊中。例如在一個成員方法中定義一個內(nèi)部類,或者在switch語句塊中定義一個內(nèi)部類,或在一個循環(huán)結(jié)構(gòu)中定義一個內(nèi)部類,都是允許的。不過這樣的內(nèi)部類使用的限制更為嚴格。,import java.awt.*; import java.awt.event.*; public class Test8_4 extends Frame implements ActionListener static Test8_4 frm=new Test8_4(); static Button btn1=new Button(“Yellow“); 定義本圖形用戶界面要用的組件 static Button btn2=new Button(“Green“); static Button btn3=new Button(“Exit“); public static void main(String args) btn1.addActionListener(frm); / 委托容器類對象frm監(jiān)聽btn1發(fā)出的事件 btn2.addActionListener(frm); / 把事件監(jiān)聽器frm向btn2注冊 辦理委托,注冊監(jiān)聽 btn3.addActionListener(frm); / 把事件監(jiān)聽器frm向btn3注冊 frm.setTitle(“Action Event“); frm.setLayout(new FlowLayout(FlowLayout.CENTER); frm.setSize(200,150); frm.add(btn1); frm.add(btn2); frm.add(btn3); frm.setVisible(true); public void actionPerformed(ActionEvent e) /實現(xiàn)接口ActionListener的抽象方法 Button btn=(Button) e.getSource(); / 取得事件源 if(btn=btn1) / 如果是按下btn1按鈕 frm.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 圖書館安全教育:防火防盜培訓(xùn)課程
- 隔離設(shè)備可靠性分析-洞察及研究
- 河北科技學(xué)院《生理學(xué)講學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年制造業(yè)智能制造與工業(yè)互聯(lián)網(wǎng)融合的產(chǎn)業(yè)政策研究報告
- 山東政法學(xué)院《能源微生物》2023-2024學(xué)年第一學(xué)期期末試卷
- 中山大學(xué)《工程力學(xué)B》2023-2024學(xué)年第一學(xué)期期末試卷
- 棗莊科技職業(yè)學(xué)院《拉片實驗》2023-2024學(xué)年第一學(xué)期期末試卷
- 合肥信息技術(shù)職業(yè)學(xué)院《復(fù)變函數(shù)論》2023-2024學(xué)年第一學(xué)期期末試卷
- 遼寧對外經(jīng)貿(mào)學(xué)院《形體訓(xùn)練(流行舞蹈)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年制造業(yè)數(shù)據(jù)治理在智能制造設(shè)備故障預(yù)測中的應(yīng)用研究報告
- 2025年中小學(xué)心理健康教育教師考試試題及答案
- 2025年江西省社區(qū)工作者招聘考試試卷
- 2025-2030中國鋼制車輪行業(yè)競爭格局與盈利前景預(yù)測報告
- 【人教版】北京西城2024-2025學(xué)年 四年級下學(xué)期期末數(shù)學(xué)試題【三】有解析
- miRNA與心血管疾病
- 供水加壓泵站管理制度
- 保險公司保密管理制度
- 2025年執(zhí)業(yè)藥師資格證之《西藥學(xué)專業(yè)一》預(yù)測試題附答案詳解【模擬題】
- 一體化政務(wù)大數(shù)據(jù)體系建設(shè)實踐指南1.0
- 2025年湖北省高考地理試卷真題(含答案解析)
- 基礎(chǔ)寫作的試題及答案
評論
0/150
提交評論