Visual Editor 提供了特殊的行为,方便了 Swing JSplitPane 容器的使用。
可以使用类 javax.swing.JSplitPane 来创建中间带有分割条的两个组件。在运行时,用户可以拖动分割条以调整屏幕上的空间。
在 Visual Editor 中,这两个子组件显示在 Java Bean 视图上的 JSplitPane 下面。在 Java Bean 视图或“设计”视图中的 JSplitPane 上放下新组件时,如果没有任何现有子代,则 Visual Editor 将尝试将该组件放置在左窗格中。如果在左窗格中已经有了一个组件,则正在放下的组件将被添加到右窗格中。如果 JSplitPane 中的两个窗格都已被占据,则 Visual Editor 不允许放下该组件。
Visual Editor for Java 是否将左组件和右组件显示为子代取决于它的方向属性的值。如果此属性设置为 VERTICAL_SPLIT,则会显示底部组件和顶部组件。
为每个分割窗格子代生成的方法将使用 set 方法来设置该子代的其中一个属性。例如:
ivjJSplitPane.setTopComponent(getIvjJButton());
除了使用 set 方法设置组件之外,还可以使用约束“top”、“bottom”、“left”或“right”来添加组件。例如:
ivjJSplitPane.addComponent(getIvjJButton(),"top");
当将组件放到 JSplitPane 上时,如果未显式地设置分隔条位置,则分隔条位置将根据左边或顶部组件的首选大小而更改。然后,如果设置了其余组件,则用它填充另一边。例如,如果将 JPanel 放置到没有组件的 JSplitPane 中,在缺省情况下它将被指定到左边。分隔条位置将移动到分割窗格中的最左边,因为 JPanel 的 preferredSize 很小。如果接着将组件放到使用 FlowLayout 的 JPanel 上,则分割窗格将根据 JPanel 的首选大小调整大小,由于添加至 JPanel 的组件的首选大小,JPanel 的大小现在已经更改。
Visual Editor 将呈示单层中的 JLayeredPane 索引。在多层索引的情况下,Visual Editor 可能无法按正确的顺序显示组件。