精通java.swing程序设计
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) 否则在编译的时候将有错误信息产生。 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
- android1382014-04-04值得参考,不错,谢谢分享!!!!!!!!!
- 粉丝: 314
- 资源: 67
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- python语言解决背包问题,使用递归和动态规划两种思路并比较运行速度
- 基于Django和Celery的中国知网(CNKI)爬虫及数据可视化设计源码
- 基于C++实现的斐波那契数列
- 基于SSM框架的Java家庭财务管理设计源码
- UDP转发脚本udp-forwarding-udp-forward-master.zip
- tio来开发udptio-udp-showcase-master.zip
- 基于Scala的Spark数字仓库推荐系统设计源码
- 基于Django的博客系统设计源码
- 基于Node.js和AngularJS的JsGen社区网站系统设计源码
- 基于Vue和Echarts的数据可视化大屏设计源码