分割面板(JSplitPane)

Java中的分割面板的故事:

我们常用的各种软件,包括QQ、以及window的资源管理器都可以随意的拖动其大小,这就是java中的分割面板。

先来看一段代码,分割面板的代码,只分割了两部分。

源码:

  1  import java.awt.BorderLayout;

  2  import java.awt.Container;

  3  import javax.swing.JFrame;
  4  import javax.swing.JLabel;
  5  import javax.swing.JSplitPane;

  6  public class Example extends JFrame {

  7    public static void main(String[] args) {
  8      Example frame = new Example();
  9        frame.setVisible(true);
  10   }

  11   public Example() {

  12     super();
  13     setTitle("分割面板");
  14     setBounds(100, 100, 500, 300);// 设置面板的大小
  15     setDefaultCloseOperation(EXIT_ON_CLOSE);
  16     Container c = getContentPane();// 返回JFrame窗体中的组件

  17     JSplitPane jsp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);// 设置为水平分割
  18     c.add(jsp, BorderLayout.CENTER);
  19     jsp.setLeftComponent(new JLabel("左边"));
  20     jsp.setContinuousLayout(true);// 重绘分隔条
  21     jsp.setDividerLocation(80);// 设置分割条左边的初始宽度
  22     jsp.setRightComponent(new JLabel("右边"));
  23   }
       24 }

源码解释:

  1.第1~5行是一些基本的java的基本的包。

  2.第7~10行是主函数。主函数定义的定义的基本格式都是:

    public static void main(String[] args) {

      语句;

    }

  3.第11行往后就是该函数的构造函数。public Example(){};

  4.13~15行进行设置JFrame的标题,大小以及关闭的方式。

  5.第16行是getContentPane方法,Example类继承了JFrame窗体。getContentPane是JFrame中的一个方法,用于返回此窗体的 contentPane 对象。

  6.第17~22行即为分割面板的主要的代码。

    17行.新建一个JSplitPane对象jsp。并将其设置为水平分割,其实设置这个其实是多此一举的,本来JSplitPane默认的就是水平分割。

    18行.将jsp对象加入到JFrame窗体中,并设置其布局管理器为BorderLayout,并将jsp对象放置在面板的中间位置。

    19行.设置jsp对象的左侧,给其左侧加入一个JLabel对象,并设置其显示为“左边”。

    20行.重新绘制分割条,如果将这句删去,程序也会运行,但是在拖动分隔条的过程中会显示分隔条的影子所在的位置。

    21行.设置分割条左侧的面板的初始像素值,我将这个设置为80元。

    22行.在分割条的右边用同样的方法可以加入一个带有“右边”字样的JLabel组件。

   在JSplitPane中还有许多的方法等着我们一起去探究呢,我们一起加油。

中文版API下载地址:链接:https://pan.baidu.com/s/1JtpAQPSFh9NBDfnQaNK6GA 密码:mtci

原文地址:https://www.cnblogs.com/beiyin/p/8594038.html

时间: 2024-11-14 01:34:42

分割面板(JSplitPane)的相关文章

iview 分割面板效果(一)基本原理

方法一: 基本点就是:利用“子绝父相(子元素相对于父元素进行定位)”, 左侧的pane设置为left:0;right:a%, 则右侧的设置为right:0;left:(100-a)%. 如果左右之间有操作条什么的,要记得减出去哟:总之就是width要凑成100%. 1 <div class="wrapper"> 2 <div class="pane pane-left"></div> 3 <div class="p

iview 分割面板效果(二)

源码地址:https://gitee.com/yolanda624/coffer/tree/master/src/components/a-split-panel 原文地址:https://www.cnblogs.com/ordinary-yolanda/p/11430964.html

十三周作业显示

图片编辑器:基本框架的显示 import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; public class PhotoFrame { public static void main(String[]args){ //创建框架 final JFrame pf = new JFrame(); pf.setTitle("图片编辑器

2019java第十二周课程总结

本周主要还是学习图形界面 各种容器使用方法 如下代码: package text10; import java.awt.*; import java.io.File; import javax.swing.*; public class Text extends JFrame{ public Text() { this.setTitle("窗口"); Container cont=this.getContentPane(); JLabel la=new JLabel("标签&

JSplitPane按比例分割的问题

JSplitPane看似比Delphi的spliter难用许多.不过介于swing可以方便的使用记事本一类文本编辑器直接书写依据布局的界面代码我们还是姑且容忍它带来的不便.但在使用JSplitPane时候在MSDN上被问的比较频繁却没有良好答案的问题是JSplitPane如何按比例分割,setDividerLocation(double d)为什么没有作用. 要解决这个问题首先看JAVA DOC.关于setDividerLocation的介绍是这样的: setDividerLocationpub

第12章-Swing编程 --- Swing中的特殊容器--JSplitPane

(一)使用JSplitPane JSplitPane用于创建一个分割板,它可以将一个组件(通常是一个容器)分割成两个部分,并提供一个分割条.用户可以拖动该分隔条来调整两个部分的大小.分隔面板的实质是一个特殊容器,该容器只能容纳两个组件,而且分割面板又分为上下分割.左右分割两种情形. 创建分割面板的代码如下: new JSplitPane(方向,左/上组件,右/下组件); JSplitPane分割面板提供了如下几个方法: (1)setDividerLocation(double proportio

java Swing组件之JSplitPane使用

使用 JSplitPane.HORIZONTAL_SPLIT 可让分隔窗格中的两个 Component 从左到右排列,或者使用 JSplitPane.VERTICAL_SPLIT 使其从上到下排列.改变 Component 大小的首选方式是调用 setDividerLocation,其中 location 是新的 x 或 y 位置,具体取决于 JSplitPane 的方向. 要将 Component 调整到其首选大小,可调用 resetToPreferredSizes. 1.常见构造方法 JSp

Java实现酒店管理系统之Java swing酒店管理系统的实现及源码下载

今天给大家提供一个由Java swing实现的酒店管理系统,数据库采用mysql,我会贴上部分代码,完整的代码请看文章最下方下载,下面看代码: 1.主框架代码: package 主框架窗口; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java

第12章Swing编程

第12章Swing编程 Swing它采用100%java实现 不在依赖本地平台,所有平台都可以保持相同的运行效果,对跨平台支持比较出色  实现了MVC设计模式也称为Model-Delegate(模式-代理) 12.1 Swing概况 独立于本地平台的Swing(速度慢点)组件被称为轻量级组件,而依赖本地平台的AWT组件被称为重量级组件 12.2 Swing 基本组件的用法 12.2.1 Swing 组件层次 大部分Swing组件都是JComponent抽象类的直接或者间接子类,JComponen