JavaSwing中JSplitPane的用法

2025-10-23 02:23:29

1、 JSplitPane的基础知识: JSplitPane是一个分隔面板,其有两种划分窗格的方式,一种是水平分割,使用 JSplitPane.HORIZONTAL_SPLIT实现,此种方式 可让分隔窗格中的两个 Component 从左到右排列,另外一种是垂直分割,它使用JSplitPane.VERTICAL_SPLIT 使其从上到下排列。改变得到的左右或者上下两个子窗格的大小可以调用setDividerLocation(int location),其中location是表示分隔条的位置,可用其横坐标x或者纵坐标y表示,具体的还要看分隔条的方向。下面介绍一下常见的构造方法:

1.1 JSplitPane() :  创建一个配置为将其子组件水平排列、无连续布局、为组件使用两个按钮的新 JSplitPane。

JSplitPane(int newOrientation)  :创建一个配置为指定方向且无连续布局的新 JSplitPane。

JSplitPane(int newOrientation, boolean newContinuousLayout) :创建一个具有指定方向和重重绘方式的新JSplitPane。

1.2 紧接着介绍一下常用的方法:

setDividerLocation(double proportionalLocation) :设置分隔条的位置,用百分比表示。

setContinuousLayout(boolean newContinuousLayout) :设置 continuousLayout 属性的值,在用户干预期要使子组件连续地重新显示和布局子组件,此值必须为 true。

setDividerLocation(int location)  :设置分隔条的位置。

setDividerSize(int size) :设置分隔条的大小。

getDividerLocation() :获取分隔条的位置。

getDividerSize() :获取分隔条的大小。

setOneTouchExpandable(boolean value)  :设置 oneTouchExpandable 属性的值为 true,则 JSplitPane 在分隔条上会显示一个用来快速展开/折叠分隔条的箭头。

2、示例程序

package com.TreeTest;

import java.awt.Button;

import java.awt.Dimension;

import javax.swing.JButton;

import javax.swing.JPanel;

import javax.swing.JSplitPane;

import javax.swing.JFrame;

public class JSplitPaneDemo {

    public JSplitPaneDemo(){

        JButton b1=new JButton("水平分割");

        JButton b2=new JButton("垂直分割");

        JButton b3=new JButton("OK");

        JButton b4=new JButton("Cancel");

        JPanel j1=new JPanel();

        JPanel j2=new JPanel();

        j1.add(b1);

        j1.add(b2);

        j2.add(b3);

        j2.add(b4);

        JSplitPane jsp=new JSplitPane();

        jsp.setDividerLocation(100);

        jsp.setDividerSize(3);

        jsp.setPreferredSize(new Dimension(800, 600));

        jsp.setOrientation(JSplitPane.HORIZONTAL_SPLIT);

        jsp.setOneTouchExpandable(true);

        jsp.setLeftComponent(j1);

        jsp.setRightComponent(j2);

        JFrame frame=new JFrame("分隔面板示例");

      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

      frame.setContentPane(jsp);

      frame.setVisible(true);

      frame.pack();   

    }

    public static void main(String[] args) {

        new JSplitPaneDemo();

    }

    

}

JavaSwing中JSplitPane的用法

3、关于JSplitPane的用法就说到这里。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢