3

我需要在我的代码中隐藏狭缝窗格,如下图所示。我不知道如何在 Java Swing 基础 GUI 中进行拆分窗格隐藏/取消隐藏。在我的代码中,我将拆分窗格分成两个水平部分,然后将拆分窗格的右组件分成两个垂直部分。我想隐藏/取消隐藏拆分窗格的左侧部分。

在此处输入图像描述

在此处输入图像描述

import java.awt.*;
import java.awt.Event.*;
import javax.swing.*;

class DemoSwingDesign extends JFrame {

    boolean b = false;
    public static JSplitPane splitpane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, true);
    public static JSplitPane splitpane1 = new JSplitPane(JSplitPane.VERTICAL_SPLIT, true);

    public DemoSwingDesign() {
        JFrame frame = new JFrame("Split Pain");
        frame.setSize(300, 300);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setDefaultLookAndFeelDecorated(true);
        frame.setLayout(new GridLayout());
        //Defining Split Pane


        //splitpane size
        splitpane.setDividerLocation(150);
        splitpane1.setDividerLocation(90);
        splitpane.setContinuousLayout(true);
        splitpane.setOneTouchExpandable(true);

        JTabbedPane jtp = new JTabbedPane();
        jtp.setName("XRay");

        JTabbedPane jtp1 = new JTabbedPane();
        JTabbedPane jtp2 = new JTabbedPane();
        jtp1.setName("Set");
        jtp2.setName("OK");

        JPanel jp = new JPanel(new BorderLayout());

        JComponent Lefttabbedpane = new JTabbedPane();
        jp.add(jtp, -1);
        Lefttabbedpane = jtp;
        splitpane.add(splitpane1, "right");

        splitpane.setLeftComponent(new JScrollPane(jtp2));
        splitpane1.setTopComponent(new JScrollPane(jtp1));
        splitpane1.setBottomComponent(new JScrollPane(Lefttabbedpane));
        frame.add(splitpane);
        frame.setVisible(true);
    }
}

class Temp {

    public static void main(String args[]) {
        DemoSwingDesign d = new DemoSwingDesign();
    }
}
4

1 回答 1

1

也许您正在寻找这个:JSplitPane.setOneTouchExpandable(boolean)

于 2012-03-12T05:50:01.830 回答