九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

Java圖形界面簡介.ppt

  • 資源ID:3771615       資源大小:192.50KB        全文頁數(shù):47頁
  • 資源格式: PPT        下載積分:9.9積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機:
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機號,方便查詢和重復下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標題沒有明確說明有答案則都視為沒有答案,請知曉。

Java圖形界面簡介.ppt

Java2實用教程(第版)教學課件,第章組件及事件處理,7.1Java窗口7.2文本框7.3內(nèi)部類實例做監(jiān)視器7.4按鈕與標簽7.5菜單項7.6文本區(qū)7.7面板7.8布局7.9畫布,7.10選擇型組件7.11Component類的常用方法7.12窗口事件7.13鼠標事件7.14焦點事件7.15鍵盤事件7.16使用剪貼板7.17打印7.18綜合實例,圖形用戶界面,通過圖形用戶界面(GUI:GraphicsUserInterface),用戶和程序之間可以方便地進行交互。Java的抽象窗口工具包(AWT:AbstractWindowToolkit)中包含了許多類來支持GUI設計。AWT由Java的java.awt包提供,該包中有許多用來設計GUI的組件類,如:按鈕、菜單、列表、文本框等組件類,同時它還包含窗口、面板等容器類。,AWT(AbstractWindowToolkit),java.awt包Java.swing包提供了基本的java程序的GUI設計工具。Component(組件)Container(容器)LayoutManager(布局管理器),Java.lang.Object,AWTEvent,Font,Componet,Graphics,MenuComponent,各種布局管理器類,Container,Panel,Applet,Window,Frame,容器類(Container)和組件類(Component),Java.awt包中一部分類的層次關(guān)系如圖所示,Component(組件),Java的圖形用戶界面的最基本組成部分是組件,組件是一個可以以圖形化的方式顯示在屏幕上并能與用戶進行交互的對象,例如一個按鈕,一個標簽等。組件不能獨立地顯示出來,必須將組件放在一定的容器中才可以顯示出來。,Component類,java.awt包中最核心的類就是Component類,它是構(gòu)成Java圖形用戶界面的基礎,大部分組件都是由該類派生出來的。Component類是一個抽象類,其中定義了組件所具有的一般功能:基本的繪畫支持(paint,repaint,update等)、字體和顏色等外形控制(setFont,SetForeground等)、大小和位置控制(SetSize,SetLocation等)以及組件狀態(tài)控制(SetEnable,isEnable,isVisible,isValid等),。常見組件包括:Button,Checkbox,Choice,Label,List等。,各類GUI部件的特點,Java提供的類按鈕(Button):單擊產(chǎn)生ActionEvent事件標簽(Label):標簽的功能是只顯示文本文本框(TextField):只能顯示一行,按回車鍵觸發(fā)ActionEvent窗體(Frame):頂級容器,關(guān)閉時觸發(fā)WindowEvent面板(Panel):可進行嵌套布局的容器,面板作為一個部件加入到窗體容器中,面板作為容器又可以放其他面板和部件,Container(容器),容器(Container)實際上是Component的子類,因此容器本身也是一個組件,具有組件的所有性質(zhì),另外還具有容納其它組件和容器的功能。其主要功能包括:組件的管理:方法add()可以向其中添加一個組件,remove()刪除其中的一個組件,布局管理:每個Container類都和一個布局管理器相聯(lián),以確定其中組件的布局。Container類可以通過setLayout()方法設置某種布局方式。常見的Container類有:Frame,Panel,Applet等。,LayoutManager(布局管理器),為了使我們生成的圖形用戶界面具有良好的平臺無關(guān)性,Java語言中,提供了布局管理器這個工具來管理組件在容器中的布局,而不使用直接設置組件位置和大小的方式。每個容器都有一個布局管理器,當容器需要對某個組件進行定位或判斷其大小尺寸時,就會調(diào)用其對應的布局管理器。標準的布局管理器類有:FlowLayout;BorderLayout;GridLayout;CardLayout;GridBagLayout,在程序中安排組件的位置和大小時,應該注意:容器中的布局管理器負責各個組件的大小和位置,因此用戶無法在這種情況下設置組件的這些屬性。如果試圖使用Java語言提供的setLocation(),setSize(),setBounds()等方法,則都會被布局管理器覆蓋。如果用戶確實需要親自設置組件大小或位置,則應取消該容器的布局管理器,方法為:setLayout(null);,javax.swing包為我們提供了更加豐富的、功能強大的組件,稱為swing組件,其中大部分組件是輕量組件,沒有同位體。swing組件的輕組件在設計上和AWT完全不同,輕組件把與顯示組件有關(guān)的許多工作和處理組件事件的工作交給相應的UI代表來完成,這些UI代表是用Java語言編寫的類,這些類被增加到java的運行環(huán)境中,因此組件的外觀不依賴平臺,不僅在不同平臺上的外觀是相同的,而且較重量組件而言有更高的性能,幾個重要的類,javax.swing包中有四個最重要的類JFrame、JDialog、JComponent。JComponent類的子類都是輕組件,而JFrame、JDialog都是重組件,即有同位體的組件,這樣窗口(JFrame)、對話框(JDialog)可以和操作系統(tǒng)交互信息,輕組件必須在這些重量容器中繪制自己。JComponent類是java.awt包中容器類Container類的子類,因此所有的輕量組件也都是容器。,1JComponent類,JComponent類是所有輕量組件的父類(就象Component類是所有重量組件的父類)。JComonent的幾個代表子類:JLable負責創(chuàng)建標簽JPanel負責創(chuàng)建面板對象JTextField負責創(chuàng)建文本框?qū)ο驤Button負責創(chuàng)建按鈕,7.1Java窗口,Frame類是Container類的間接子類。當需要一個窗口時,可使用Frame或其子類創(chuàng)建一個對象。窗口也是一個容器,可以向窗口添加組件。需要注意的是,窗口默認地被系統(tǒng)添加到顯示器屏幕上,因此,不允許將一個窗口添加到另一個容器中。,1.Frame常用方法,1Frame()該構(gòu)造方法可以創(chuàng)建一個無標題的窗口2Frame(Strings)該構(gòu)造方法可以創(chuàng)建一個標題為s的窗口,窗口的默認布局為BorderLayout布局。3publicvoidsetBounds(inta,intb,intwidth,intheight)窗口調(diào)用該方法可以設置出現(xiàn)在屏幕上時的初始位置是(a,b),即距屏幕左面a個像素、距屏幕上方b個像素;窗口的寬是width,高是height。4publicvoidsetSize(intwidth,intheight)設置窗口的大小,窗口在屏幕出現(xiàn)是默認位置是(0,0)。,5publicvoidsetVisible(booleanb)設置窗口是可見還是不可見,窗口默認是不可見的。6publicvoidsetResizable(booleanb)設置窗口是否可調(diào)整大小,窗口默認是可調(diào)整大小的。創(chuàng)建一個窗口setLayout()設置窗口的布局。setLayout(newflowLayout(),7.3文本框,java.awt包中的類TextField類創(chuàng)建文本框用戶可以在文本框輸入單行的文本,.TextField類的主要方法,TextField(intx)如果使用這個構(gòu)造方法創(chuàng)建文本框?qū)ο?,文本框中的可見字符序列的長度為x個機器字符長。文本框是可編輯的,用戶可以在文本框中輸入若干個字符。TextField(Strings)如果使用這個構(gòu)造方法創(chuàng)建文本框?qū)ο螅瑒t文本框的初始字符串為s。文本框是可編輯的,可以在文本框中輸入若干個字符。publicvoidsetText(Strings)文本框?qū)ο笳{(diào)用該方法可以設置文本框中的文本為參數(shù)s指定的文本,文本框中先前的文本將被清除。publicStringgetText()文本框?qū)ο笳{(diào)用該方法可以獲取文本框中的文本。publicvoidaddActionListener(ActionListenerl)文本框?qū)ο笳{(diào)用該方法可以向文本框增加動作監(jiān)視器(將監(jiān)視器注冊到文本框)。,importjava.awt.*;classWindowTextextendsFrameTextFieldtext1,text2;WindowText(Strings)super(s);setLayout(newFlowLayout();text1=newTextField("輸入密碼:",10);text1.setEditable(false);text2=newTextField(10);text2.setEchoChar(*);add(text1);add(text2);setBounds(100,100,200,150);setVisible(true);validate();publicclassExample7_2publicstaticvoidmain(Stringargs)WindowTextwin=newWindowText("添加了文本框的窗口");,7.4按鈕與標簽,標簽的功能是只顯示文本,不能動態(tài)地編輯文本。Lalel類的實例就是一個標簽.Label(),Label(Stringtext),Label(Stringtext,intalignment)publicStringgetText()publicvoidsetText(Stringtext)publicintgetAlignment()publicvoidsetAlignment(intalignment,按鈕與標簽,Java.awt包中的Button類是專門用來建立按鈕的。即Button類創(chuàng)建的一個對象就是一個按鈕。按鈕可以發(fā)生ActionEvent事件,當按鈕獲得監(jiān)視器之后,用鼠標單擊按鈕,就發(fā)生ActionEven事件。Button(),Button(Stringlabel)publicStringgetLabel()publicvoidsetLabel(Stringlabel)publicvoidaddActionListener(ActionListenerl)publicvoidremoveActionListener(ActionListenerl),擴展按鈕建一個button的子類例7.7,2.文本框上的ActionEvent事件,學習組件除了了解組件的屬性和功能外,一個更重要的方面是學習怎樣處理組件上發(fā)生的界面事件。在學習處理事件時,必須很好地掌握事件源、監(jiān)視器、處理事件的接口這三個概念。通過處理文本框這個具體的組件上的事件,來掌握處理事件的基本原理。,在圖形用戶界面中,程序和用戶的交互是通過組件響應各種事件來實現(xiàn)的。在Java中能產(chǎn)生事件的組件叫做事件源,如按鈕。如果希望對單擊按鈕事件進行處理,可給事件源(按鈕)注冊一個事件監(jiān)聽器(如包含按鈕的容器),如同簽訂了一個委托合同,當事件源發(fā)生事件時,事件監(jiān)聽器就代替事件源對發(fā)生的事件進行處理,這就是所謂的委托事件處理機制。,Java的事件處理模式,監(jiān)視器需要一個對象對事件源進行監(jiān)視,以便對發(fā)生的事件作出處理。事件源通過調(diào)用相應的方法將某個對象作為自己的監(jiān)視器。例如,對于文本框,這個方法是:addActionListener(監(jiān)視器);創(chuàng)建該監(jiān)視器對象的類必須聲明實現(xiàn)相應的接口,Java的事件處理模式,事件源能夠產(chǎn)生事件的對象都可以成為事件源,如文本框、按鈕、下拉式列表等。也就是說,事件源必須是一個對象,而且這個對象必須是Java認為能夠發(fā)生事件的對象。處理事件的接口在文本框獲得輸入焦點之后,如果用戶按回鍵,Java運行系統(tǒng)就自動用ActionEvent類創(chuàng)建了一個對象,即發(fā)生了ActionEvent事件當事件源發(fā)生事件時,監(jiān)視器就自動調(diào)用執(zhí)行被類實現(xiàn)的某個接口方法,文本框接口(ActionListener)方法:publicvoidactionPerformed(ActionEvente),處理事件示意圖,當你將一個類用作事件監(jiān)聽器時,你已經(jīng)設置好一個特定的事件類型,它會用該類進行監(jiān)聽。接下來的操作是:一個匹配的監(jiān)聽器必須被加入到該組件中組件被創(chuàng)建之后,可以在組件上調(diào)用如下方法來將監(jiān)聽器與它聯(lián)系起來addActionListener()可用于Button,Check,TexyField等組件addItemListener()可用于Button,CheckBox等組件addKeyListener()可用于所有可視化組件addMouseListener()可用于所有可視化組件addWindowsListener()可用于Window,Frame等組件例:下面語句創(chuàng)建一個Button對象,并將它與動作事件監(jiān)聽器聯(lián)系起來Buttonbutton=newButton(“OK”);button.addActionListener(this);/this指明當前類就是事件監(jiān)聽器,ActionEvent事件getSource()getActionCommand()例子7.3,7.4,7.7面板,java.awt包的Panel類是Container(容器)的子類,因此Panel類及其子類的實例也是一個容器,Panel型容器的默認布局是FlowLayout型布局。Panel類創(chuàng)建的對象稱做面板,我們經(jīng)常在一個面板里添加若干個組件后,再把面板放到另一個容器里。,7.8布局,當把組件添加到容器中時,希望控制組件在容器中的位置,這就需要學習布局設計的知識。我們將分別介紹java.awt包中的FlowLayout、BorderLayout、CardLayout、GridLayout布局類和java.swing.border包中的BoxLayout布局類。容器可以使用方法:setLayout(布局對象);來設置自己的布局。,1.FlowLayout布局,如果一個容器使用這個FlowLayout型布局,組件按照加入的先后順序從左向右排列,一行排滿之后就轉(zhuǎn)到下一行繼續(xù)從左至右排列.,importjava.awt.*;classWindowFlowextendsFrameWindowFlow(Strings)super(s);FlowLayoutflow=newFlowLayout();flow.setAlignment(FlowLayout.LEFT);flow.setHgap(2);flow.setVgap(8);setLayout(flow);for(inti=1;i<=10;i+)Buttonb=newButton("iam"+i);add(b);setBounds(100,100,150,120);setVisible(true);publicclassExample7_12publicstaticvoidmain(Stringargs)WindowFlowwin=newWindowFlow("FlowLayout布局窗口");,2.BorderLayout布局,BorderLayout布局是Window型容器的默認布局,例如Frame、Dialog都是Window類的子類,它們的默認布局都是BorderLayout布局。如果一個容器使用這種布局,那么容器空間簡單地劃分為東、西、南、北、中五個區(qū)域,中間的區(qū)域最大。,importjava.awt.*;classExample7_13publicstaticvoidmain(Stringargs)Framewin=newFrame("窗體");win.setBounds(100,100,300,300);win.setVisible(true);ButtonbSouth=newButton("我在南邊"),bNorth=newButton("我在北邊"),bEast=newButton("我在東邊"),bWest=newButton("我在西邊");TextAreabCenter=newTextArea("我在中心");win.add(bNorth,BorderLayout.NORTH);win.add(bSouth,BorderLayout.SOUTH);win.add(bEast,BorderLayout.EAST);win.add(bWest,BorderLayout.WEST);win.add(bCenter,BorderLayout.CENTER);win.validate();,7.11Component類的常用方法,Component類是所有組件的父類,這一節(jié)介紹Component類的常用方法,1.組件的顏色,publicvoidsetBackground(Colorc)設置組件的背景色。publicvoidsetForeground(Colorc)設置組件的前景色。publicColorgetBackground()獲取組件的背景色。publicColorgetForeground()獲取組件的前景色。,2組件的字體,publicvoidsetFont(Fontf)組件調(diào)用該方法設置組件上的字體。例如,文本組件調(diào)用該方法可以設置文本組件中的字體。publicFontgetFont()組件調(diào)用該方法獲取組件上的字體。text.setFont(newFont("隸書",Font.BOLD,32);例7.22,GraphicsEnvironment抽象類類描述了Java(tm)應用程序在特定平臺上可用的GraphicsDevice對象和Font對象的集合。此GraphicsEnvironment中的資源可以是本地資源,也可以位于遠程機器上。GraphicsDevice對象可以是屏幕、打印機或圖像緩沖區(qū),并且都是Graphics2D繪圖方法的目標。每個GraphicsDevice都有許多與之相關(guān)的GraphicsConfiguration對象。這些對象指定了使用GraphicsDevice所需的不同配置。,publicstaticGraphicsEnvironmentgetLocalGraphicsEnvironment()返回本地GraphicsEnvironmentpublicabstractStringgetAvailableFontFamilyNames()返回一個包含此GraphicsEnvironment中所有字體系列名稱的數(shù)組,它針對默認語言環(huán)境進行了本地化,由Locale.getDefault()返回。典型用法是向用戶展示特定字體系列名稱的選擇。然后,應用程序可以在創(chuàng)建字體(包括樣式,如粗體或斜體)時指定此名稱,這為字體系統(tǒng)從同一字體系列的多種字體中選擇自身最匹配的字體提供了靈活性。,3組件的大小與位置,publicvoidsetSize(intwidth,intheight)組件調(diào)用該方法設置組件的大小,參數(shù)width指定組件的寬度,height指定組件的高度。publicvoidsetLocation(intx,inty)組件調(diào)用該方法設置組件在容器中的位置,包含該組件的容器都有默認的坐標系,容器的坐標系的左上角的坐標是(0,0),參數(shù)x,y指定該組件的左上角在容器的坐標系中的坐標,即組件距容器的左邊界x個像素,距容器的上邊界y個像素。,publicPointgetLocation()組件調(diào)用該方法返回一個Point對象的引用,該對像實體中含有名字是x和y的成員變量,方法返回的Point對象的x,y的值就是組件的左上角在容器的坐標系中的x坐標和y坐標。publicvoidsetBounds(intx,inty,intwidth,intheight)組件調(diào)用該方法設置組件在容器中的位置和組件的大小。該方法相當于setSize方法和setLocation方法的組合。,4組件的激活與可見性,publicvoidsetEnabled(booleanb)組件調(diào)用該方法可以設置組件是否可被激活,當參數(shù)b取值true時,組件可以被激活,當參數(shù)b取值false時,組件不可激活。默認情況下,組件是可以被激活的。publicvoidsetVisible(boolean)設置組件在該容器中的可見性,當參數(shù)b取值true時,組件在容器中可見,當參數(shù)b取值false時,組件在容器中不可見。除了Window型組件外,其它類型組件默認是可見的。,

注意事項

本文(Java圖形界面簡介.ppt)為本站會員(xt****7)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!