import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JSplitPane1{
public JSplitPane1(){
JFrame f=new JFrame("JSplitPaneDemo");
Container contentPane=f.getContentPane();
JLabel label1=new JLabel("Label 1",JLabel.CENTER);
label1.setBackground(Color.green);
label1.setOpaque(true);//setOpaqueIture)方法的目的是让组件变成不透明,这样我们在JLabel上所设置的颜色
// 才能显示出来。
JLabel label2=new JLabel("Label 2",JLabel.CENTER);
label2.setBackground(Color.pink);
label2.setOpaque(true);
JLabel label3=new JLabel("Label 3",JLabel.CENTER);
label3.setBackground(Color.yellow);
label3.setOpaque(true);
/*加入label1,label2到splitPane1中,并设置此splitPane1为水平分割且具有Continuous Layout的
*功能。
*/
JSplitPane splitPane1=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,false,label1,label2);
/*设置splitPane1的分隔线位置,0.3是相对于splitPane1的大小而定,因此这个值的范围在0.0~1.0
*中。若你使用整数值来设置splitPane的分隔线位置,如第34行所示,则所定义的值以pixel为计算单位
*/
splitPane1.setDividerLocation(0.3);
/*设置JSplitPane是否可以展开或收起(如同文件总管一般),设为true表示打开此功能。
*/
splitPane1.setOneTouchExpandable(true);
splitPane1.setDividerSize(10);//设置分隔线宽度的大小,以pixel为计算单位。
JSplitPane splitPane2=new JSplitPane(JSplitPane.VERTICAL_SPLIT,false,splitPane1,label3);
splitPane2.setDividerLocation(35);
//设置JSplitPane是否可以展开或收起(如同文件总管一般),设为true表示打开此功能.
splitPane2.setOneTouchExpandable(false);
splitPane2.setDividerSize(5);
contentPane.add(splitPane2);
f.setSize(250,200);
f.show();
f.addWindowListener(
new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
}
);
}
public static void main(String[] args){
new JSplitPane1();
}
}
java.lang.Object
--java.awt.Component
--java.awt.Container
--javax.swing.JComponent
--javax.swing.JSplitPane
Split Pane(分割面版)一次可将两个组件同时显示在两个显示区中,若你想要同时在多个显示区显示组件,你便必须同时使
用多个Split Pane。JSplitPane提供两个常数让你设置到底是要水平分割还是垂直分割。这两个常数分别是:HORIZONTAL_SPIT,
VERTICAL_SPLIT.除了这两个重要的常数外,JSplitPane还提供许多类常数让你使用,我们会在下面的例子中介绍比较常用的类常数
,其余信息请参年java API.
JsplitPane构造函数:
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()方法来设置此项目。
分享到:
相关推荐
【kk.rar】是一个压缩包文件,其中包含了名为"jsplitpane UI_成绩管理系统"的相关内容。这个系统显然是一个教育或教学环境中使用的应用,用于管理学生的成绩。【jsplitpane】是Java Swing库中的一个组件,它在用户...
Java Swing 是Java平台上用于构建图形用户界面(GUI)的一个库,它是Java Foundation Classes (JFC)的一部分。在Swing中,你可以创建出丰富、交互性强的桌面应用,而且它的组件库提供了很多美观的外观和感觉。 ...
Java Swing 是Java GUI(图形用户界面)库的一部分,用于构建桌面应用程序。它提供了丰富的组件集合,使得开发者可以创建复杂的、交互式的用户界面。在Java Swing组件全演示中,我们将深入探讨Swing的核心概念、组件...
3. **Swing增强**:JDK 6对Swing组件进行了优化,例如添加了JSplitPane的双击调整功能,改进了JTable性能,以及提供了更多的可定制UI选项。 4. **XML处理改进**:JAXB(Java Architecture for XML Binding)2.0成为...
- **Swing组件增强**:Swing组件库得到增强,例如`JSplitPane`改进,`JTable`性能优化,以及新的`JTabbedPane`样式。 - **Look and Feel**:支持更多的外观和感觉(LookAndFeel),允许自定义UI主题,提升了用户...
AWT是Java早期提供的GUI组件库,它是Java平台的基础UI框架。AWT提供了基本的窗口、按钮、文本框等组件,允许开发者创建功能丰富的图形用户界面。以下是一些AWT的关键知识点: 1. **组件(Components)**:AWT中的...
3. **Swing组件增强**:Swing库在这一版本中得到了显著优化,新增了JTabbedPane、JSplitPane等组件,同时UI设计更加现代化,使得桌面应用的开发更加得心应手。 4. **NIO.2**:Java 6.0引入了新的I/O API,即JSR 203...
8. **Swing工具包**:Swing还包括一些高级组件,如JTabbedPane(选项卡面板)、JScrollPane(滚动面板)、JSplitPane(分割面板)等,它们为创建复杂布局提供了便利。 9. **异步编程**:Swing是线程安全的,所有的...
7. **Swing组件的高级特性**:如JTabbedPane(选项卡面板)、JSplitPane(分割面板)、JScrollPane(滚动面板)以及拖放支持等,可以帮助构建更复杂的UI结构。 8. **Swing工具包**:包括JFileChooser(文件选择...
2. 自定义`JPanel`子类:可能代表`JSplitPane`的左右两侧组件,实现特定的UI布局和功能。 3. 事件监听器:可能添加了鼠标或键盘监听器,以响应用户对分隔条的操作。 运行这个项目,用户可以在myEclipse环境下看到一...
Swing还提供了许多高级特性,如国际化支持、 Accessibility(无障碍访问)功能、以及JLayeredPane和JSplitPane等复杂布局组件。这些示例程序会演示如何利用这些特性来创建功能完善的桌面应用。 通过深入研究这个"最...
1. **增强的Swing组件**:JDK6对Swing库进行了大量优化,提供了更好的UI设计,增强了桌面应用的用户体验。例如,增加了JSplitPane的双向分割功能,改进了JTable的性能,以及对LookAndFeel的改进。 2. **动态语言...
7. **高级组件**:如JTree(树形视图)、JTable(表格)、JTabbedPane(选项卡面板)、JSplitPane(分割窗格)等,它们提供了更复杂的UI展示和交互。 8. **定制组件**:Swing允许开发者自定义组件,可以通过继承已...
9. **多线程**:在图形化界面编程中,理解并发和多线程的重要性,学习如何在Swing中安全地执行长时间运行的任务,避免阻塞UI。 10. **国际化和本地化**:了解如何使应用程序支持多种语言,以满足全球用户的需求。 ...
4. **外观和感觉(LookAndFeel)**:Java允许改变应用程序的视觉样式,可以设置系统默认的LookAndFeel,也可以自定义LookAndFeel以达到特定的UI风格。 5. **模型-视图-控制器(MVC)**:Swing组件遵循这一设计模式...
"王者归来之Java图形编程(经典)"系列涵盖了这两个关键组件,为开发者提供了深入的学习资源。 AWT,是Java早期的GUI库,它是Java与操作系统之间的一个接口。AWT组件直接与底层系统进行交互,因此它们通常能够提供...
16. Swing小部件:JTabbedPane、JSplitPane等高级组件的使用。 17. AWT与Swing的区别:比较两者之间的异同及选用建议。 18. 性能优化:提高Swing应用性能的策略和技巧。 19. Swing应用打包与部署:如何将Swing应用...
3. **ch4**:第四章可能涵盖对话框(JOptionPane)和其他高级组件,如JTabbedPane、JSplitPane、JScrollPane等,这些都是构建复杂界面时常用的功能。此外,可能还会涉及Swing的模型-视图-控制器(MVC)架构,以及...
Swing还包含一些特殊的小部件,如JTabbedPane(选项卡面板)、JSplitPane(分割窗格)和JToolBar(工具栏),它们增强了应用的交互性和可用性。 通过深入学习和实践,开发者可以利用Java Swing创建功能强大、美观...
10. **Swing worker线程**:理解Swing的事件调度线程(Event Dispatch Thread, EDT)和如何使用SwingWorker来避免阻塞UI,实现异步处理。 通过深入学习"Java2图形设计卷2",你不仅可以掌握Swing的基本用法,还能...