Introduzione a JSplitPane

JSplitPane è un componente Java Swing che aiuta a dividere due componenti in base all'implementazione di L&F (Look and Feel). Aiuta anche a ridimensionare i componenti anche a una dimensione minima. Tuttavia, se la dimensione minima dei componenti è maggiore di JSplitPane, non è possibile eseguire il ridimensionamento. Due tipi come splitpane verticale e orizzontale sono attualmente basati rispettivamente sull'allineamento da sinistra a destra e dall'alto verso il basso. Sintassi, costruttore e metodi di JSplitPane saranno discussi in dettaglio nelle sezioni seguenti.

Sintassi:

public class JSplitPane extends JComponent implements Accessible

Qui estende la classe JComponent e implementa l'interfaccia accessibile.

Costruttori JSplitPane

JSplitpane ha diversi costruttori con e senza argomenti. Loro sono:

  • JSplitPane (): un nuovo riquadro diviso viene creato da sinistra a destra (orizzontale) utilizzando 2 pulsanti per i componenti.
  • JSplitPane (orientamento int): viene creato un nuovo riquadro diviso con l'orientamento specificato.
  • JSplitPane (orientamento int, ridisegno booleano): viene creato un nuovo riquadro diviso con un orientamento e uno stile di ridisegno specificati.
  • JSplitPane (orientamento int, redraw booleano, Component leftcmp, Component rightcmp): viene creato un nuovo riquadro diviso con l'orientamento e lo stile di ridisegno specificati, componente sinistro e destro.
  • JSplitPane (int orient, Component leftcmp, Component rightcmp): viene creato un nuovo riquadro diviso con l'orientamento specificato, componente sinistro e destro.

I 30 metodi principali di JSplitPane

JSplitPane offre metodi che eseguono diverse operazioni. Sono indicati nella tabella seguente:

Metodo Spiegazione
getOrientation ()Verrà restituito l'orientamento di SplitPane.
getUIClassID ()Verrà restituito il nome della classe L&F (Look and Feel) che esegue il rendering del componente.
getUI ()(Aspetto) Verrà restituito l'oggetto L&F che esegue il rendering del componente.
getDividerSize ()Le dimensioni del divisore verranno restituite.
getAccessibleContext ()Verrà restituito AccessibleContext collegato con SplitPane
setUI (SplitPaneUI u)(Aspetto) Verrà impostato l'oggetto L&F che esegue il rendering del componente.
paramString ()La rappresentazione di JSplitPane sarà in formato stringa
getMinimumDividerLocation ().La posizione minima o minima del divisore verrà restituita.
rimuovi (Componente cmp)Il componente figlio dallo splitpane verrà rimosso.
getDividerLocation ()Verrà restituito l'ultimo valore passato a setDividerLocation.
isOneTouchExpandable ()La proprietà "oneTouchExpandable" verrà restituita.
setRightComponent (Component cmp)Il componente destro di Splitpane sarà impostato su cmp
isContinuousLayout ()La proprietà "continueLayout" verrà restituita
getMaximumDividerLocation ()La posizione massima o massima del divisore verrà restituita.
setLeftComponent (Component cmp)Il componente sinistro di Splitpane verrà impostato su cmp
setBottomComponent (Component cmp)Il componente inferiore di Splitpane verrà impostato su cmp
setDividerSize (int s)Le dimensioni del divisore verranno impostate.
setOneTouchExpandable (boolean st)Verrà impostata la proprietà "oneTouchExpandable".
setResizeWeight (double w)Quando le dimensioni della splitpane cambiano, questo metodo aiuta a specificare come distribuire lo spazio extra hs.
setLastDividerLocation (int loc)

L'ultima posizione del divisore verrà impostata.
setTopComponent (Component CMP)

Il componente principale di Splitpane verrà impostato sul parametro CMP.
setDividerLocation (int loc)La posizione del divisore verrà impostata.
rimuovi (indice int)Il componente nell'indice menzionato verrà rimosso
setContinuousLayout (boolean n)Verrà impostato il valore "layout continuo" della proprietà. Per visualizzare di nuovo continuamente i componenti figlio, questo valore deve essere vero
getTopComponent ()

Il componente principale di Splitpane verrà restituito utilizzando questo metodo.
setDividerLocation (double loc)

La posizione del divisore verrà impostata come percentuale della dimensione di SplitPane.
getRightComponent ()Il componente giusto di Splitpane verrà restituito.
getBottomComponent ()Il componente inferiore di Splitpane verrà restituito.
addImpl (Component CMP, Object cob, int in)Il componente menzionato verrà aggiunto a SplitPane.

Programma per implementare JSplitPane

Ora, vediamo un programma di esempio che dimostra JSplitPane:

Codice:

// 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 );
)
)

Produzione:

Qui, viene generato un output con 3 pannelli contenenti diversi pulsanti. Nel Pannello 1 sono presenti cinque pulsanti N, E, W, S e C mentre nel pannello 2 sono presenti cinque pulsanti A, B, C, D ed E. Nella parte inferiore è presente anche un pannello per informazioni speciali.

Conclusione

JSplitPane è un componente Swing in Java che aiuta a dividere i componenti in base all'implementazione Look and Feel (L&F). Inoltre, i componenti possono anche essere ridimensionati ad una dimensione minima. In questo documento, i costruttori, i metodi e il programma di esempio per JSplitPanel sono discussi in dettaglio.

Articolo raccomandato

Questa è una guida a JSplitPane. Qui discutiamo dei costruttori JSplitPane e dei primi 30 metodi con la sua descrizione insieme all'implementazione del Codice. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -

  1. Costruttore in Java con tipi
  2. Costruttore in Python con vantaggi
  3. Generatore di numeri casuali in C
  4. Variabili in C con le sue regole | I 5 migliori tipi
  5. JPanel in Java (funzioni utilizzate)
  6. Esempi di JFrame in Java
  7. Generatore di numeri casuali in Matlab
  8. Generatore di numeri casuali in C #
  9. JLabel in Java
  10. Flowlayout in Java

Categoria: