Введение в JSplitPane

JSplitPane - это компонент Java Swing, который помогает разделить два компонента на основе реализации L & F (Look and Feel). Это также помогает изменить размеры компонентов даже до минимального размера. Однако, если минимальный размер компонентов больше, чем JSplitPane, изменение размера невозможно. Два типа, такие как вертикальная и горизонтальная разделенная панель, в настоящее время основаны на выравнивании слева направо и сверху вниз соответственно. Синтаксис, конструктор и методы JSplitPane будут подробно обсуждаться в следующих разделах.

Синтаксис:

public class JSplitPane extends JComponent implements Accessible

Здесь он расширяет класс JComponent и реализует интерфейс Accessible.

Конструкторы JSplitPane

JSplitpane имеет разные конструкторы с аргументами и без них. Они есть:

  • JSplitPane (): Новая разделенная панель создается слева направо (по горизонтали) с использованием 2 кнопок для компонентов.
  • JSplitPane (ориентация int): создается новая разделенная панель с указанной ориентацией.
  • JSplitPane (ориентация int, логическое перерисовывание): создается новая разделенная панель с заданной ориентацией и стилем перерисовки.
  • JSplitPane (ориентация int, логическое перерисовывание, компонент leftcmp, компонент rightcmp): создается новая разделенная панель с заданной ориентацией и стилем перерисовки, левый и правый компоненты.
  • JSplitPane (ориентация int, Компонент leftcmp, Компонент rightcmp): создается новая разделенная панель с заданной ориентацией, левый и правый компоненты.

30 лучших методов JSplitPane

JSplitPane предлагает методы, которые выполняют несколько операций. Они рассматриваются в таблице ниже:

метод объяснение
GetOrientation ()Ориентация SplitPane будет возвращена.
getUIClassID ()Имя класса L & F (Look and Feel), который отображает компонент, будет возвращено.
getUI ()(Посмотри и почувствуй) Будет возвращен объект L & F, который отображает компонент.
getDividerSize ()Размер делителя будет возвращен.
getAccessibleContext ()AccessibleContext, связанный с SplitPane, будет возвращен
setUI (SplitPaneUI u)(Посмотри и почувствуй) Будет установлен объект L & F, который отображает компонент.
paramString ()Представление JSplitPane будет в строковом формате
getMinimumDividerLocation ().Наименьшее или минимальное расположение делителя будет возвращено.
удалить (компонент cmp)Дочерний компонент из разделенной панели будет удален.
getDividerLocation ()Будет возвращено последнее значение, переданное в setDividerLocation.
isOneTouchExpandable ()Свойство «oneTouchExpandable» будет возвращено.
setRightComponent (Компонент cmp)Правый компонент Splitpane будет установлен в CMP
isContinuousLayout ()Свойство ContinuousLayout будет возвращено
getMaximumDividerLocation ()Наибольшее или максимальное местоположение делителя будет возвращено.
setLeftComponent (Компонент cmp)Левый компонент Splitpane будет установлен в cmp
setBottomComponent (Component cmp)Нижний компонент Splitpane будет установлен в cmp
setDividerSize (int s)Размер делителя будет установлен.
setOneTouchExpandable (логическое число)Будет установлено свойство «oneTouchExpandable».
setResizeWeight (double w)При изменении размера разделенной панели этот метод помогает указать, как распределяется дополнительное пространство.
setLastDividerLocation (int loc)

Последнее местоположение делителя будет установлено.
setTopComponent (Компонент CMP)

Верхний компонент Splitpane будет установлен на параметр CMP.
setDividerLocation (int loc)Расположение делителя будет установлено.
удалить (int index)Компонент по указанному индексу будет удален
setContinuousLayout (логическое n)Будет установлено значение свойства «непрерывная компоновка». Чтобы постоянно отображать дочерние компоненты, это значение должно быть истинным
getTopComponent ()

Верхний компонент Splitpane будет возвращен с использованием этого метода.
setDividerLocation (double loc)

Расположение делителя будет задано в процентах от размера панели SplitPane.
getRightComponent ()Правый компонент Splitpane будет возвращен.
getBottomComponent ()Нижний компонент Splitpane будет возвращен.
addImpl (Компонент CMP, Object cob, int in)Упомянутый компонент будет добавлен в SplitPane.

Программа для реализации JSplitPane

Теперь давайте рассмотрим пример программы, которая демонстрирует JSplitPane:

Код:

// Java program to demonstrate JSplitPane
import java.awt.*;
import javax.swing.*;
class JSplitPaneExample extends JFrame
(
//declare the Vertical Pane, Horizontal pane and Panels
private JSplitPane VerticalPane;
private JSplitPane HorizontalPane;
private JPanel P1;
private JPanel P2;
private JPanel P3;
Color cl=new Color(190, 190, 240);
//constructor of the class
public JSplitPaneExample()
(
setTitle( "Example to demonstrate JSplitPane" );
//setting the background color
setBackground( Color. orange );
//object of the panel
JPanel PanelObj = new JPanel();
//set borderlayout for the panel
PanelObj.setLayout( new BorderLayout() );
getContentPane().add( PanelObj );
// Create three different panels
P1Creation();
P2Creation();
P3Creation();
P1.setBackground(cl);
P2.setBackground(cl);
P3.setBackground(cl);
// Create vertical and horiontal splitter pane
VerticalPane = new JSplitPane( JSplitPane. VERTICAL_SPLIT );
PanelObj.add( VerticalPane, BorderLayout. CENTER );
HorizontalPane = new JSplitPane( JSplitPane. HORIZONTAL_SPLIT );
HorizontalPane.setLeftComponent( P1 );
HorizontalPane.setRightComponent( P2 );
VerticalPane.setLeftComponent( HorizontalPane );
VerticalPane.setRightComponent( P3 );
)
//create panel 1 with 5 buttons
public void P1Creation()
(
P1 = new JPanel();
P1.setLayout( new BorderLayout() );
// Add 5 button
P1.add( new JButton( "N" ), BorderLayout. NORTH );
P1.add( new JButton( "S" ), BorderLayout. SOUTH );
P1.add( new JButton( "E" ), BorderLayout. EAST );
P1.add( new JButton( "W" ), BorderLayout. WEST );
P1.add( new JButton( "C" ), BorderLayout. CENTER );
)
//create panel 2 with 3 buttons
public void P2Creation()
(
P2 = new JPanel();
P2.setLayout( new FlowLayout() );
P2.add( new JButton( "Button A" ) );
P2.add( new JButton( "Button B" ) );
P2.add( new JButton( "Button C" ) );
P2.add( new JButton( "Button D" ) );
P2.add( new JButton( "Button E" ) );
)
//create panel 3 with 1 buttons
public void P3Creation()
(
P3 = new JPanel();
//set borderlayout
P3.setLayout( new BorderLayout() );
//set preferred size
P3.setPreferredSize( new Dimension( 400, 100 ) );
//set the minimum size
P3.setMinimumSize( new Dimension( 100, 50 ) );
P3.add( new JLabel( "Special information: " ), BorderLayout. NORTH );
P3.add( new JTextArea(), BorderLayout. CENTER );
)
public static void main( String args() )
(
// Create an object of the class
JSplitPaneExample obj = new JSplitPaneExample();
//call pack method that helps the subcomponents of preferred size
obj.pack();
//shows the window
obj.setVisible( true );
)
)

Выход:

Здесь вывод генерируется с 3 панелями, содержащими разные кнопки. На Panel1 присутствуют пять кнопок N, E, W, S и C, тогда как на панели 2 присутствуют пять кнопок A, B, C, D и E. Внизу панель для специальной информации также присутствует.

Вывод

JSplitPane - это компонент Swing в Java, который помогает в разделении компонентов на основе реализации Look and Feel (L & F). Кроме того, компоненты могут быть изменены до минимального размера. В этом документе конструкторы, методы и пример программы для JSplitPanel обсуждаются подробно.

Рекомендуемая статья

Это руководство по JSplitPane. Здесь мы обсуждаем конструкторы JSplitPane и 30 лучших методов с их описанием и реализацией кода. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Конструктор в Java с типами
  2. Конструктор в Python с преимуществами
  3. Генератор случайных чисел в C
  4. Переменные в C с его правилами | Топ 5 типов
  5. JPanel в Java (используемые функции)
  6. Примеры JFrame в Java
  7. Генератор случайных чисел в Matlab
  8. Генератор случайных чисел в C #
  9. JLabel на Java
  10. Flowlayout в Java