swing分割窗口控件JSplitPane使用方法详解

作者:WilliamSun0122 时间:2021-07-28 14:15:20 

本文为大家分享了JSplitPane的使用方法,供大家参考,具体内容如下

1、swing分割窗口控件JSplitPane,用来将窗口分割成两个部分。

2、分割后的窗口每个窗口只能放一个控件,想要方多个控件的话,可以在上面方一个JPane面板,这样就可以方多个控件。swing分割窗口控件JSplitPane,用来将窗口分割成两个部分。JSplitPane提供两个常数让你设置到底是要垂直分割还是水平分割。这两个常数分别是:HORIZONTAL_SPIT,VERTICAL_SPLIT

3、使用方法:

①、setDividerSize(int size)设置分割条的大小。

②、getDividerSize()得到分割条的大小。

③、setDividerLocation(int size)按照百分比设置分割条的位置。

④、getOrientation获得方向。

4、构造方法

JSplitPane():建立一个新的JSplitPane,里面含有两个默认按钮,并以水平方向排列,且没有Continuous Layout功能。

JSplitPane(int newOrientation):建立一个指定水平或垂直方向切割JSplitPane,但没有Continuous Layout功能。

JSplitPnae(int newOrientation,boolean newContinuousLayout):建立一个指定水平或垂直方向切割的JSplitPane,且指定是否具有Continuous Layout功能。

JSplitPane(int newOrientation,boolean newContinuousLayout,Component
newLeftComponent,Component newRightComponent):建立一个指定水平或垂直方向切割的JSplitPane,且指定显示区所要显示的组件,并设置是否Continuous Layout功能。

JSplitPane(int newOrientation,COmponent newLeftComponent,COmponent newRightComponent):
建立一个指定水平或垂直方向切割的JSplitPane,且指定显示区所要显示的组件,但没有Continuous Layout功能 。

上面所说的Continuous Layout意思是指当你拖曳切割面版的分隔线时,窗口内的组件是否会随着分隔线的拖曳而动态改变大小。newContinuousLayout是一个boolean值,若设为true,则组件大小会随着分隔线的拖曳而一起改动;若设为false,则组件大小在分隔线停止改动时才确定。你也可以使用JSplitPane中的setContinuousLayout()方法来设置此项目。

5、实例


package swing;

import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;

import javax.swing.JFrame;
import javax.swing.JSplitPane;
import javax.swing.JPanel;
public class MainFrame extends JFrame {
/**
 *
 */
JSplitPane jSplitPane1 = new JSplitPane();
JPanel jPanel1 = new JPanel();
JPanel jPanel2 = new JPanel();
private static final long serialVersionUID = 1L;
public static void main(String[] args){
 new MainFrame();
 }

public void myinit(){
 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设定窗体关闭后自动退出进程
 this.setSize(800,600);//设定窗体的默认尺寸
 this.setExtendedState(JFrame.MAXIMIZED_BOTH);//设定窗体状态为屏幕最大化,即全屏尺寸。
 this.setVisible(true);//显示窗体
 this.jSplitPane1.setDividerLocation(0.7);//设定分割面板的左右比例(这时候就生效了,如果放在setVisible(true)这据之前就不会有效果。)
 this.addComponentListener(new ComponentAdapter() {

public void componentResized(ComponentEvent e) {

jSplitPane1.setDividerLocation(0.7);
  }
 });
}  

public MainFrame() {
 try {

jbInit();
  myinit();
 } catch (Exception ex) {
  ex.printStackTrace();
 }
}
private void jbInit() throws Exception {
 this.getContentPane().add(jSplitPane1, java.awt.BorderLayout.CENTER);
 jSplitPane1.add(jPanel1, JSplitPane.LEFT);
 jSplitPane1.add(jPanel2, JSplitPane.RIGHT);
 jSplitPane1.setEnabled(false);
 jSplitPane1.setOneTouchExpandable(true);

}

}

来源:http://blog.csdn.net/WilliamSun0122/article/details/69390419

标签:swing,JSplitPane,分割窗口
0
投稿

猜你喜欢

  • 基于WPF实现筛选下拉多选控件

    2021-11-15 20:47:50
  • java nio基础使用示例

    2022-02-12 01:46:22
  • 利用Spring boot如何创建简单的web交互应用

    2023-07-15 12:47:00
  • Java 重写时应当遵守的 11 条规则

    2023-02-10 18:58:06
  • java如何获得redis所有的key-value

    2022-03-13 12:22:14
  • Java中CyclicBarrier 循环屏障

    2021-11-24 08:22:24
  • Java——对象初始化顺序使用详解

    2023-11-01 01:08:46
  • 详解java倒计时三种简单实现方式

    2023-11-11 16:47:38
  • java easyUI实现自定义网格视图实例代码

    2022-05-16 23:52:54
  • 通过实例学习Either 树和模式匹配

    2023-05-21 02:02:41
  • 浅谈java常用的几种线程池比较

    2021-07-24 01:28:23
  • java json 省市级联实例代码

    2021-11-13 18:50:35
  • Java 8 动态类型语言Lambda表达式实现原理解析

    2023-08-05 09:04:25
  • C#实现Array,List,Dictionary相互转换

    2022-10-09 13:51:39
  • springboot整合JSR303参数校验与全局异常处理的方法

    2023-10-06 01:31:40
  • Struts2实现文件上传功能实例解析

    2023-11-04 04:56:13
  • RocketMQ4.5.X 实现修改生产者消费者日志保存路径

    2021-05-24 23:58:37
  • java 同步、异步、阻塞和非阻塞分析

    2022-08-09 03:02:42
  • Android ContentProvider实现获取手机联系人功能

    2023-08-07 00:52:27
  • Springboot WebJar打包及使用实现流程解析

    2023-06-21 22:08:00
  • asp之家 软件编程 m.aspxhome.com