12.0 本章概述

12.0 本章概述

本章要点

  • Swing编程基础
  • Swing组件的继承层次
  • 常见Swing组件的用法
  • 使用JToolBar创建工具条
  • 颜色选择对话框和文件浏览对话框
  • Swing提供的特殊容器
  • Swing的简化拖放操作
  • 使用JLayer装饰组件
  • 开发透明的、不规则形状窗口
  • 开发进度条
  • 开发滑动条
  • 使用JTreeTreeModel开发树
  • 使用JTableTableModel开发表格
  • 使用JTextPane组件

Swing跨平台

使用Swing开发图形界面比AWT更加优秀,因为Swing是一种轻量级组件,Swing采用100%的Java实现,不再依赖于本地平台的图形界面,所以可以在所有平台上保持相同的运行效果,对跨平台支持比较出色

Swing组件更多

除此之外,Swing提供了比AWT更多的图形界面组件,因此可以开发出更美观的图形界面。由于AWT需要调用底层平台的GUI实现,所以AWT只能使用各种平台上GUI组件的交集,这大大限制了AWT所支持的GUI组件。对Swing而言,几乎所有组件都采用纯Java实现,所以无须考虑底层平台是否支持该组件,因此Swing可以提供如JTabbedPaneJDesktopPaneJInternalFrame等特殊的容器,也可以提供像JTreeJTableJSpinnerJSlider等特殊的GUI组件。

MVC

除此之外,Swing组件都釆用MVC(Model-View-Controller,即模型-视图-控制器)设计模式,从而可以实现GUI组件的显示逻辑和数据逻辑的分离,允许程序员自定义Render来改变GUI组件的显示外观,提供更多的灵活性。