网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.反汇编器-javap.exe.
.与篮球共舞,尽显模式本色.
.今天学习到的java中的几个知识点.
.深入浅出Java clone技术(3).
.Struts 的安装、配置与运行.
.花二十分钟教你Ruby快速入门.
.一个反射的简单例子.
.Java中的排序.
.Java人员谈论内存泄露问题分析.
.对Java客户端的展望.
.JDBMonitor全攻略.
.Java入门笔记8_JavaTools.
.体验J2SE 1.5新特性之增强For循环.
.用Java写一个地图编辑器.
.在java中实现sql的select函数功能.
.评论:Java应用热遍全球.
.简单的 Java 循环控制实现行列式.
.Java网络编程之URI、URL研究(上.
.Java学习之了解Java的运行环境.
.Servlet技巧ABC.

Swing 常用的 Package

发表日期:2008-1-5



  Swing常用的package
        PACHAGE                        内     容
       ------------------------------------------------
       Javax.swing                最常用的pachage,包含了各种swing组件的类
       javax.swing.border             包含与swing组件外框有关的类
       javax..swing.colorchooser         针对swing调色盘组件(JColorChooser)所设计的类
       javax.swing.event             处理由swing组件产生的事件,有别于AWT事件
       javax.swing.filechooser          包含针对swing文件选择对话框(JFileChooser)所设计的类
       ----------------------------------------------
       javax.swing.plaf              处理swing组件外观的相关类
       javax.swing.plaf.basic          
       javax.swing.plaf.metal          
       javax.swing.plaf.multi       
       ----------------------------------------------   
       javax.swing.table             针对swing表格组件(JTable)所设计的类
       ----------------------------------------------
       javax.swing.text              包含与swing文字组件相关的类
       javax.swing.text.Html      
       javax.swing.text.html.parser  
       javax.swing.text.rtf      
       ----------------------------------------------
       javax.swing.tree              针对swing树关元件(JTree)所设计的类
       javax.swing.undo              提供swing文字组件Redo或Undo的功能
  1-2:swing的版面结构
   Swing中几乎所有组件都是从JComponent衍生而来,也就是说这些组件都是lightweight Component,均由纯java code所编写面成
  、Swing中以下几个组件不是由JComponent继续面来:
    JFrame(JRoot Pane)
    JDialog(JRoot Pane)
    JWindow(JRoot Pane)
    JApplet(JRoot Pane)
   以上四个组件是heavyweight Component,必须使用到native code来画出这四个窗口组件,因为要在操作系统中显示窗口画面,必
  须使用操作系统的宣传品资源,面以往的AWT组件大多使用native code所构造出来,因此Swing中的JFrame便继续原有AWT中的Frame
  类,面不是继续JComponent类。同样,JApplet是继续原有AWT中的JApplet类,也不是继续JComponent类。
    JFrame、JDialog、JWindow及JApplet这四个组件统称为最上层组件,因为其余的swing组件都必须依附在此四组件之一上才能
  显示出来。此四组件均实现(Implement)RootPaneContainer这个界面(Interface),此界面定义了各种容器取得与设置并不是真实的容器,它是由Glass Pane与Layered Pane所组成(Layered Pane里拥有Content Pane与Menu Bar,而Menu Bar可选择使用或不使用),
  我们不能在JRootPane上加入任何的组件,因为它只是一个虚拟的容器,若要在最上层组件上加入组件,必须加在Layered Pane或是
  Layered Pane里的Content Pane上。以JFrame为例,一般我们要在JFrame上加入其他组件(如JButton、JLabel等)必须先取得JFrame
  的Content Pane,然后将要加入的组件放在此Content Pane中,而不是直接就加到JFrame上。因此若要在JFrame中加入一个按钮,不
  能像以前AWT时一样写成frame.add(button)的形式,而必须先取得JFrame的Content Pane,然后将按钮加入Content Pane中,如:
   frame.getContentPane().add(button)
  否则在编译的时候将有错误信息产生。
  
  注重:
  1.组件必须加在容器中,而容器本身具有层次性的关系,就如同珠宝盒一般,大盒子里面可以放小盒子,小盒子里面还可以放更小的盒子,而珠宝就可以放在某一个盒子中,这里的珠宝就代表组件,盒子就代表容器。因此若您想在JFrame加入任何组件时,必须
  先取得JFrame的容器来放置这些组件,而由于JFrame、JDialog、JWindow与JApplet是显示Swing组件的源头,我们可以称它们为根
  组件,也就是所谓的最上层组件。
  2.RootPaneContainer它是一个interface,共有5个类实现(Implement)它,分别是JFrame、JAppleet、JWindow、JDialog、
  JInternalFrame,其中JInternalFrame是一个lightweight Component,它不是一个最上层组件,也就是说JInternalFrame不能单独显示出来,必须依附在最上层组件中,我们将在下面讨论组件,而JFrame,JApplet,JWindow,JDialog均为最上层组件。
  
  RootPaneContainer定义了下面几种方法:
    方法
   Container    getContentPane()返回contentPane
   Component    getGlassPane()返回glassPane
   JLayeredPane  getLayeredPane()返回layeredPane
   JRootPane    getRootPane返回属于这个组件的JRootPane
   Void      setContentPane(Container contentpane)设置ContentPane
   Void      setGlassPane(Component glassPane)设置GlassPane
   Void      setLayeredPane(JLayeredPane layeredPane)设置LayeredPane
  JFrame如何取得Content Pane的实际流程,下面是一段很简单的程序代码:
   public class Simple{
    Simple(){
     JFrame frame=new JFrame();
     Container contentPane=frame.getContentPane();
     JButton button=new JButton();
     contentPane.add(button);
    }
   }
  当我们写frame.getContentPane()时,会返回此frame的Content Pane,也就是一个容器组件,有了容器之后我们才能将button组件
  摆进去,此时JFrame才算拥有button组件。所以JFrame就似乎是一块空地,要在这空地上信人应该先盖一栋房子(容器),然后人
  、家具、设备等等(组件)就能搬进此房子中。下面的层次结构说明了最上层组件都含有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
上一篇:linux下java awt 中中文的处理 人气:774
下一篇:在Applet中实现数字签名 人气:931
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐