国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Swing 常用的 Package

2019-11-18 11:56:47
字體:
供稿:網(wǎng)友

  Swing常用的package
        PACHAGE                        內(nèi)     容
       ------------------------------------------------
       javax.swing                最常用的pachage,包含了各種swing組件的類
       javax.swing.border             包含與swing組件外框有關(guān)的類
       javax..swing.colorchooser         針對(duì)swing調(diào)色盤組件(JColorChooser)所設(shè)計(jì)的類
       javax.swing.event             處理由swing組件產(chǎn)生的事件,有別于AWT事件
       javax.swing.filechooser          包含針對(duì)swing文件選擇對(duì)話框(JFileChooser)所設(shè)計(jì)的類
       ----------------------------------------------
       javax.swing.plaf              處理swing組件外觀的相關(guān)類
       javax.swing.plaf.basic          
       javax.swing.plaf.metal          
       javax.swing.plaf.multi       
       ----------------------------------------------   
       javax.swing.table             針對(duì)swing表格組件(JTable)所設(shè)計(jì)的類
       ----------------------------------------------
       javax.swing.text              包含與swing文字組件相關(guān)的類
       javax.swing.text.Html      
       javax.swing.text.html.parser  
       javax.swing.text.rtf      
       ----------------------------------------------
       javax.swing.tree              針對(duì)swing樹關(guān)元件(JTree)所設(shè)計(jì)的類
       javax.swing.undo              提供swing文字組件Redo或Undo的功能
  1-2:swing的版面結(jié)構(gòu)
   Swing中幾乎所有組件都是從JComponent衍生而來,也就是說這些組件都是lightweight Component,均由純java code所編寫面成
  、Swing中以下幾個(gè)組件不是由JComponent繼續(xù)面來:
    JFrame(JRoot Pane)
    JDialog(JRoot Pane)
    JWindow(JRoot Pane)
    JApplet(JRoot Pane)
   以上四個(gè)組件是heavyweight Component,必須使用到native code來畫出這四個(gè)窗口組件,因?yàn)橐?a href="http://m.survivalescaperooms.com/system.asp">操作系統(tǒng)中顯示窗口畫面,必
  須使用操作系統(tǒng)的宣傳品資源,面以往的AWT組件大多使用native code所構(gòu)造出來,因此Swing中的JFrame便繼續(xù)原有AWT中的Frame
  類,面不是繼續(xù)JComponent類。同樣,JApplet是繼續(xù)原有AWT中的JApplet類,也不是繼續(xù)JComponent類。
    JFrame、JDialog、JWindow及JApplet這四個(gè)組件統(tǒng)稱為最上層組件,因?yàn)槠溆嗟膕wing組件都必須依附在此四組件之一上才能
  顯示出來。此四組件均實(shí)現(xiàn)(Implement)RootPaneContainer這個(gè)界面(Interface),此界面定義了各種容器取得與設(shè)置并不是真實(shí)的容器,它是由Glass Pane與Layered Pane所組成(Layered Pane里擁有Content Pane與Menu Bar,而Menu Bar可選擇使用或不使用),
  我們不能在JRootPane上加入任何的組件,因?yàn)樗皇且粋€(gè)虛擬的容器,若要在最上層組件上加入組件,必須加在Layered Pane或是
  Layered Pane里的Content Pane上。以JFrame為例,一般我們要在JFrame上加入其他組件(如JButton、JLabel等)必須先取得JFrame
  的Content Pane,然后將要加入的組件放在此Content Pane中,而不是直接就加到JFrame上。因此若要在JFrame中加入一個(gè)按鈕,不
  能像以前AWT時(shí)一樣寫成frame.add(button)的形式,而必須先取得JFrame的Content Pane,然后將按鈕加入Content Pane中,如:
   frame.getContentPane().add(button)
  否則在編譯的時(shí)候?qū)⒂绣e(cuò)誤信息產(chǎn)生。
  
  注重:
  1.組件必須加在容器中,而容器本身具有層次性的關(guān)系,就如同珠寶盒一般,大盒子里面可以放小盒子,小盒子里面還可以放更小的盒子,而珠寶就可以放在某一個(gè)盒子中,這里的珠寶就代表組件,盒子就代表容器。因此若您想在JFrame加入任何組件時(shí),必須
  先取得JFrame的容器來放置這些組件,而由于JFrame、JDialog、JWindow與JApplet是顯示Swing組件的源頭,我們可以稱它們?yōu)楦?br />  組件,也就是所謂的最上層組件。
  2.RootPaneContainer它是一個(gè)interface,共有5個(gè)類實(shí)現(xiàn)(Implement)它,分別是JFrame、JAppleet、JWindow、JDialog、
  JInternalFrame,其中JInternalFrame是一個(gè)lightweight Component,它不是一個(gè)最上層組件,也就是說JInternalFrame不能單獨(dú)顯示出來,必須依附在最上層組件中,我們將在下面討論組件,而JFrame,JApplet,JWindow,JDialog均為最上層組件。
  
  RootPaneContainer定義了下面幾種方法:
    方法
   Container    getContentPane()返回contentPane
   Component    getGlassPane()返回glassPane
   JLayeredPane  getLayeredPane()返回layeredPane
   JRootPane    getRootPane返回屬于這個(gè)組件的JRootPane
   Void      setContentPane(Container contentpane)設(shè)置ContentPane
   Void      setGlassPane(Component glassPane)設(shè)置GlassPane
   Void      setLayeredPane(JLayeredPane layeredPane)設(shè)置LayeredPane
  JFrame如何取得Content Pane的實(shí)際流程,下面是一段很簡(jiǎn)單的程序代碼:
   public class Simple{
    Simple(){
     JFrame frame=new JFrame();
     Container contentPane=frame.getContentPane();
     JButton button=new JButton();
     contentPane.add(button);
    }
   }
  當(dāng)我們寫frame.getContentPane()時(shí),會(huì)返回此frame的Content Pane,也就是一個(gè)容器組件,有了容器之后我們才能將button組件
  擺進(jìn)去,此時(shí)JFrame才算擁有button組件。所以JFrame就似乎是一塊空地,要在這空地上信人應(yīng)該先蓋一棟房子(容器),然后人
  、家具、設(shè)備等等(組件)就能搬進(jìn)此房子中。下面的層次結(jié)構(gòu)說明了最上層組件都含有JRootPane組件,JRootPane本身就含有容
  器組件,可讓最上層組件裝入其他的組件。
  
     Frame------JFrame(JRoot Pane)
    
  WindowDialog-----JDialog(JRoot Pane)
    
    
     -----------JWindow(JRoot Pane)
  
  Applet -----------JApplet(JRoot Pane)
  
  圖示:
      Grass Pane
      
  Root Pane
            Content Pane
      Layered Pane
             Menu Bar

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 镇安县| 台中市| 巍山| 文安县| 象州县| 运城市| 民县| 东安县| 漠河县| 凤凰县| 会昌县| 鸡泽县| 梅州市| 任丘市| 竹溪县| 宜宾县| 中西区| 阳曲县| 新余市| 信宜市| 郯城县| 栖霞市| 崇仁县| 长乐市| 苏州市| 舟山市| 凤城市| 蓝田县| 宜都市| 峨边| 星子县| 江城| 枝江市| 景泰县| 乐安县| 宿松县| 怀宁县| 靖江市| 海兴县| 贺州市| 恩施市|