界面控件

SuperMap iDesktopX 采用Swing图形界面框架,Swing 是一个轻量级组件,采用纯 Java 实现,无需依赖于本地平台的图形界面,使得界面在所有平台的显示效果一致,同时支持跨平台显示。

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

Swing 容器组件直接继承 AWT 类库中的容器组件类,其他大部分组件都是继承 JComponet 组件。组件可以划分为容器组件和非容器组件,容器组件包括 JFmme 和 JDialog;JComponent 定义了非容器类的轻量级组件,例如:JBntton、JPanel、JMenu 等。

Swing的类库组织结构如下图:

SwingStructure

  • Component 是 SWING 的非菜单用户界面控件的一个抽象基类。组件代表一个用图形表示的对象。
  • Container 是一个组件,它可以包含其他 SWING 组件。
  • JComponent 是一个所有 swing UI 组件的基类。为了使用继承自 JComponent 的一个 swing 组件,组件必须是一个包容层次结构,它的根是一个顶层的 Swing 容器。

扩展开发需构建界面时,任何组件都必须位于容器中,本章节主要介绍SuperMap iDesktopX 二次开发时常用的控件,控件如下:

  • JFrame 是常用的顶层容器,可在其中添加Swing组件。
  • JPanel 是常用的中间层容器,它能容纳组件并将组件组合在一起,但它本身必须添加到其他容器中使用。
  • JLabel 对象是一个在容器中放置文本的组件。
  • JTextField 对象是一个文本组件,它允许编辑单行文本。
  • JTextArea 对象是一个文本组件,它允许编辑多行文本。
  • JButton 该类创建一个有标签的的按钮。
  • JRadioButton 用于实现单选按钮,只能有一个单选按钮被选中。
  • JCheckBox 用于实现复选框,复选框有选中和未选中两种状态。
  • JComboBox 组件用于实现下拉选项。
  • JList 组件用于表示列表框。
  • JTree 组件用于实现树空间,明确数据的层次关系。
  • JToolBar 组件用于实现工具栏,可以把任意类型的组件附加到工具条上。

相关内容

JFrame 控件

JPanel 控件

JLabel 控件

JTextField 控件

JTextArea 控件

JButton 控件

JRadioButton 控件

JCheckBox 控件

JComboBox 控件

JTable 控件

JList 控件

JTree 控件

JToolBar 控件