Java JSplitPane
1 Java JSplitPane的介绍
JSplitPane用于划分两个组件。这两个组件根据外观和实现方式进行划分,并且用户可以调整它们的大小。如果两个组件的最小大小大于拆分窗格的大小,则分隔符将不允许您调整其大小。
拆分窗格中的两个组件可以使用JSplitPane.HORIZONTAL_SPLIT左右对齐,也可以使用JSplitPane.VERTICAL_SPLIT从上到下对齐。当用户调整组件的大小时,将使用组件的最小尺寸来确定可以设置组件的最大/最小位置。
2 Java JSplitPane内部类
内部类 | 描述 |
---|---|
protected class JSplitPane.AccessibleJSplitPane | 此类为JsplitPane类实现可访问性支持。 |
3 Java JSplitPane的字段
字段 | 描述 |
---|---|
static String BOTTOM | 用于在另一个组件下方添加一个组件。 |
static String CONTINUOUS_LAYOUT_PROPERTY | 连续属性的绑定属性名称。 |
static String DIVIDER | 用于添加一个代表分隔线的Component。 |
static int HORIZONTAL_SPLIT | 水平分割表示组件沿x轴分割。 |
protected int lastDividerLocation | 拆分窗格的先前位置。 |
protected Component leftComponent | 左侧或顶部组件。 |
static int VERTICAL_SPLIT | 垂直拆分表示组件沿y轴拆分。 |
protected Component rightComponent | 右侧或底部组件。 |
protected int orientation | 视图如何拆分。 |
4 Java JSplitPane构造方法
方法 | 描述 |
---|---|
JSplitPane() | 创建一个新的JsplitPane,该JsplitPane配置为使用两个按钮将这些子组件水平并排排列。 |
JSplitPane(int newOrientation) | 创建一个配置了指定方向的新JsplitPane。 |
JSplitPane(int newOrientation, boolean newContinuousLayout) | 使用指定的方向和重绘样式创建一个新的JsplitPane。 |
JSplitPane(int newOrientation, boolean newContinuousLayout, Component newLeftComponent, Component newRightComponent) | 使用指定的方向和重绘样式以及指定的组件创建一个新的JsplitPane。 |
JSplitPane(int newOrientation, Component newLeftComponent, Component newRightComponent) | 创建具有指定方向和指定组件的新JsplitPane。 |
5 Java JSplitPane的方法
方法 | 描述 |
---|---|
protected void addImpl(Component comp, Object constraints, int index) | 将指定的组件放入此拆分窗格。 |
AccessibleContext getAccessibleContext() | 获取与此JSplitPane关联的AccessibleContext。 |
int getDividerLocation() | 返回传递给setDividerLocation的最后一个值。 |
int getDividerSize() | 返回分隔符的大小。 |
Component getBottomComponent() | 返回下面或分隔符右侧的组件。 |
Component getRightComponent() | 将组件返回到分隔线的右侧(或下方)。 |
SplitPaneUI getUI() | 返回提供当前外观的SplitPaneUI。 |
boolean isContinuousLayout() | 获取ContinuousLayout属性。 |
boolean isOneTouchExpandable() | 获取oneTouchExpandable属性。 |
void setOrientation(int orientation) | 获取方向或分割器的分割方式。 |
6 Java JSplitPane的案例
package com.yiidian;
import java.awt.FlowLayout;
import java.awt.Panel;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JSplitPane;
public class JSplitPaneExample {
private static void createAndShow() {
// Create and set up the window.
final JFrame frame = new JFrame("JSplitPane案例-一点教程网");
// Display the window.
frame.setSize(300, 300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// set flow layout for the frame
frame.getContentPane().setLayout(new FlowLayout());
String[] option1 = { "A","B","C","D","E" };
JComboBox box1 = new JComboBox(option1);
String[] option2 = {"1","2","3","4","5"};
JComboBox box2 = new JComboBox(option2);
Panel panel1 = new Panel();
panel1.add(box1);
Panel panel2 = new Panel();
panel2.add(box2);
JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, panel1, panel2);
// JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT,
// panel1, panel2);
frame.getContentPane().add(splitPane);
}
public static void main(String[] args) {
// Schedule a job for the event-dispatching thread:
// creating and showing this application's GUI.
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShow();
}
});
}
}
输出结果为:
热门文章
优秀文章