null
JSplitPane是Java Swing的一部分。JSplitPane仅用于划分两个组件。JSplitPane是用来调整组件大小的。通过使用JSplitPane,用户可以手动调整组件的大小,直到其最小大小。JSplitPane可以有两种类型,一种是垂直的,另一种是垂直的 d水平拆分窗格
JSplitPane的建造商是:
- JSplitPane() :创建水平方向的新拆分窗格
- JSplitPane(int o) :创建一个新的拆分窗格,并指定方向。
- JSplitPane(int o,布尔r) :创建一个新的拆分窗格,其中提到了方向和重画样式。
- JSplitPane(int o,boolean r,Component l,Component r) :创建一个新的拆分窗格,其中包含方向、重画样式和提到的左右组件。
- JSplitPane(内部o、组件l、组件r) :创建一个新的拆分窗格,其中提到方向和左右组件。
JSplitPane的常用功能包括:
- getOrientation() :返回拆分窗格的方向
- getRightComponent() :返回拆分窗格的右侧组件
- getTopComponent() :返回拆分窗格的顶部组件
- isContinuousLayout() :返回连续布局属性
- getBottomComponent() :返回拆分窗格的底部组件
- setRightComponent(组件c) :拆分窗格的右侧组件设置为c
- setLeftComponent(组件c) :拆分窗格的左侧组件设置为c
- setTopComponent(组件c) :拆分窗格的顶部组件设置为c
- SetBottom组件(组件c) :拆分窗格的底部组件设置为c
- setUI(SplitPaneUI ui) :设置渲染此组件的外观对象。
- setResizeWeight(双v) :指定在拆分窗格的大小更改时如何分配额外空间。
- setOneTouchExpandable(布尔n) :设置oneTouchExpandable属性的值,当为true时,该属性提供一个UI小部件,可在单击时折叠或展开组件
- setDividerLocation(内部l) :设置分隔器的位置。
- setDividerSize(int n) :设置分隔符的大小。
- setLastDividerLocation(内部n) :设置分隔器的最后位置。
- setDividerLocation(双p) :将分隔器位置设置为JSplitPane大小的百分比。
- setContinuousLayout(布尔n) :设置continuousLayout属性的值,该属性必须为true才能连续重新显示子组件。
- 删除(整型索引) :删除指定索引处的组件。
- 拆卸(部件c) :从窗格中删除子组件。
- isOneTouchExpandable() :返回oneTouchExpandable属性。
- isContinuousLayout() :返回continuousLayout属性。
- getMinimumDividerLocation() :返回分隔符的最小位置。
- getMaximumDividerLocation() :返回分隔符的最大位置。
- getDividerSize() :返回分隔符的大小。
- getDividerLocation() :返回传递给setDividerLocation的最后一个值。
- addImpl(组件c、对象co、int i) :将指定组件添加到此拆分窗格。
- setUI(SplitPaneUI):设置呈现此组件的外观对象。
- getUI() :返回呈现此组件的外观对象。
- paramString():返回此JSplitPane的字符串表示形式。
- getUIClassID() :返回呈现此组件的外观类的名称。
- getAccessibleContext() :获取与此JSplitPane关联的AccessibleContext。
以下程序将说明JSplitPane的使用 1.创建水平JSplitPane以分隔两个文本区域的程序
// Java Program to create a horizontal JSplitPane // to separate two text areas import javax.swing.event.*; import java.awt.*; import javax.swing.*; class solve extends JFrame { // frame static JFrame f; // text areas static JTextArea t1, t2; // main class public static void main(String[] args) { // create a new frame f = new JFrame( "frame" ); // create a object solve s = new solve(); // create a panel JPanel p1 = new JPanel(); JPanel p = new JPanel(); // create text areas t1 = new JTextArea( 10 , 10 ); t2 = new JTextArea( 10 , 10 ); // set texts t1.setText( "this is first text area" ); t2.setText( "this is second text area" ); // add text area to panel p1.add(t1); p.add(t2); // create a splitpane JSplitPane sl = new JSplitPane(SwingConstants.HORIZONTAL, p1, p); // add panel f.add(sl); // set the size of frame f.setSize( 300 , 300 ); f.show(); } } |
输出:
2.创建垂直JSplitPane以分隔两个文本区域的程序
// Java Program to create a vertical // JSplitPane to separate two text areas import javax.swing.event.*; import java.awt.*; import javax.swing.*; class solve extends JFrame { // frame static JFrame f; // text areas static JTextArea t1, t2; // main class public static void main(String[] args) { // create a new frame f = new JFrame( "frame" ); // create a object solve s = new solve(); // create a panel JPanel p1 = new JPanel(); JPanel p = new JPanel(); // create text areas t1 = new JTextArea( 10 , 10 ); t2 = new JTextArea( 10 , 10 ); // set texts t1.setText( "this is first text area" ); t2.setText( "this is second text area" ); // add text area to panel p1.add(t1); p.add(t2); // create a splitpane JSplitPane sl = new JSplitPane(SwingConstants.VERTICAL, p1, p); // set Orientation for slider sl.setOrientation(SwingConstants.VERTICAL); // add panel f.add(sl); // set the size of frame f.setSize( 300 , 300 ); f.show(); } } |
输出:
2.创建嵌套JSplitPane的Java程序,其中一个是一键可扩展的
// Java Program to create nested JSplitPane, // one of them is one Touch Expandable import javax.swing.event.*; import java.awt.*; import javax.swing.*; class solve extends JFrame { // frame static JFrame f; // text areas static JTextArea t1, t2, t3, t4; // main class public static void main(String[] args) { // create a new frame f = new JFrame( "frame" ); // create a object solve s = new solve(); // create a panel JPanel p1 = new JPanel(); JPanel p = new JPanel(); JPanel p2 = new JPanel(); JPanel p3 = new JPanel(); // create text areas t1 = new JTextArea( 10 , 10 ); t2 = new JTextArea( 10 , 10 ); t3 = new JTextArea( 10 , 10 ); t4 = new JTextArea( 10 , 10 ); // set texts t1.setText( "this is first text area" ); t2.setText( "this is second text area" ); t3.setText( "this is third text area" ); t4.setText( "this is fourth text area" ); // add text area to panel p1.add(t1); p.add(t2); p2.add(t3); p3.add(t4); // create a splitpane JSplitPane sl = new JSplitPane(SwingConstants.VERTICAL, p1, p); JSplitPane s2 = new JSplitPane(SwingConstants.VERTICAL, p2, p3); // set Orientation for slider sl.setOrientation(SwingConstants.VERTICAL); s2.setOrientation(SwingConstants.VERTICAL); s2.setOneTouchExpandable( true ); // set divider location sl.setDividerLocation( 70 ); // set Layout for frame f.setLayout( new FlowLayout()); // add panel f.add(sl); f.add(s2); // set the size of frame f.setSize( 600 , 300 ); f.show(); } } |
输出:
注意:上述程序可能无法在联机编译器中运行,请使用脱机IDE
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END