2012-03-12 2 views
3

Мне нужно скрыть область разреза в моем коде, как показано на рисунке ниже. Я не знаю, как сделать спрятанную/скрытую панель в Java Swing базовым GUI. В моем коде я делят панель разделения на две горизонтальные части, а затем после этого я разделяю правый компонент splitpane на две вертикальные части. Я хочу скрыть/показать левую часть области сплит.Как скрыть/показать SplitPane в Java Swing на основе GUI

enter image description here

enter image description here

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(); 
    } 
} 
+0

посмотрите на эту ссылку http://stackoverflow.com/questions/6836164/jsplitpane-is-there-a-way-to-show-hide-one-of-the-panes http://stackoverflow.com/questions/4934499/how-to-set-jsplitpane-divider-collapse-expand-state – Nag

ответ

1

Может быть, вы ищете это: JSplitPane.setOneTouchExpandable(boolean)

+0

хорошо, что функциональность i Знаю, что я хочу, чтобы кто-то точно спрятал панель разделения, как показано выше image и разрешить разделить панель на вывод и отключение по требованию – Jony

+0

Не делает ли это то же самое, скрыть всю часть в jsplitpane. Единственная разница, которую я вижу, - это стильная кнопка * на вашем изображении для этой цели. –

 Смежные вопросы

  • Нет связанных вопросов^_^