Introduction à JSplitPane

JSplitPane est un composant Java Swing qui aide à diviser deux composants en fonction de l'implémentation L&F (Look and Feel). Il aide également à redimensionner les composants, même à une taille minimale. Cependant, si la taille minimale des composants est supérieure à JSplitPane, le redimensionnement ne peut pas être effectué. Deux types, tels que les volets verticaux et horizontaux, sont actuellement basés sur l'alignement de gauche à droite et de haut en bas, respectivement. La syntaxe, le constructeur et les méthodes de JSplitPane seront discutés en détail dans les sections suivantes.

Syntaxe:

public class JSplitPane extends JComponent implements Accessible

Ici, il étend la classe JComponent et implémente l'interface accessible.

Constructeurs JSplitPane

JSplitpane a différents constructeurs avec et sans arguments. Elles sont:

  • JSplitPane (): un nouveau volet divisé est créé de gauche à droite (horizontal) à l'aide de 2 boutons pour les composants.
  • JSplitPane (int orientation): un nouveau volet divisé est créé avec l'orientation spécifiée.
  • JSplitPane (orientation int, redessin booléen): un nouveau volet fractionné est créé avec une orientation et un style de redessin spécifiés.
  • JSplitPane (orientation int, redessin booléen, composant leftcmp, composant rightcmp): un nouveau volet divisé est créé avec l'orientation et le style de redessin spécifiés, composant gauche et droit.
  • JSplitPane (orientation int, Component leftcmp, Component rightcmp): Un nouveau volet divisé est créé avec l'orientation spécifiée, les composants gauche et droit.

Les 30 meilleures méthodes de JSplitPane

JSplitPane propose des méthodes qui effectuent plusieurs opérations. Ils sont traités dans le tableau ci-dessous:

Méthode Explication
getOrientation ()L'orientation du SplitPane sera retournée.
getUIClassID ()Le nom de la classe (Look and Feel) L&F qui rend le composant sera retourné.
getUI ()(Look and Feel) L&F objet qui rend le composant sera retourné.
getDividerSize ()La taille du séparateur sera retournée.
getAccessibleContext ()AccessibleContext lié au SplitPane sera retourné
setUI (SplitPaneUI u)(Look and Feel) L'objet L&F qui rend le composant sera défini.
paramString ()La représentation de JSplitPane sera au format chaîne
getMinimumDividerLocation ().L'emplacement le plus petit ou minimum du diviseur sera retourné.
supprimer (composant cmp)Le composant enfant du volet partagé sera supprimé.
getDividerLocation ()La dernière valeur transmise à setDividerLocation sera renvoyée.
isOneTouchExpandable ()La propriété «oneTouchExpandable» sera retournée.
setRightComponent (Component cmp)Le composant droit de Splitpane sera réglé sur cmp
isContinuousLayout ()La propriété «continueLayout» sera retournée
getMaximumDividerLocation ()L'emplacement le plus grand ou maximum du diviseur sera retourné.
setLeftComponent (Component cmp)Le composant gauche de Splitpane sera défini sur cmp
setBottomComponent (Component cmp)Le composant inférieur de Splitpane sera réglé sur cmp
setDividerSize (int s)La taille du diviseur sera définie.
setOneTouchExpandable (st booléen)La propriété «oneTouchExpandable» sera définie.
setResizeWeight (double w)Lorsque la taille du volet partagé change, cette méthode aide à spécifier comment l'espace supplémentaire hs doit être distribué.
setLastDividerLocation (int loc)

Le dernier emplacement du diviseur sera défini.
setTopComponent (Component CMP)

Le composant supérieur de Splitpane sera réglé sur le paramètre CMP.
setDividerLocation (int loc)L'emplacement du diviseur sera défini.
supprimer (index int)Le composant à l'index mentionné sera supprimé
setContinuousLayout (boolean n)La valeur de la «disposition continue» de la propriété sera définie. Afin de réafficher en continu les composants enfants, cette valeur doit être vraie
getTopComponent ()

Le composant supérieur de Splitpane sera retourné en utilisant cette méthode.
setDividerLocation (double loc)

L'emplacement du diviseur sera défini en pourcentage de la taille du SplitPane.
getRightComponent ()Le composant droit de Splitpane sera retourné.
getBottomComponent ()Le composant inférieur de Splitpane sera retourné.
addImpl (composant CMP, objet cob, int in)Le composant mentionné sera ajouté au SplitPane.

Programme pour implémenter JSplitPane

Maintenant, voyons un exemple de programme qui illustre JSplitPane:

Code:

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

Production:

Ici, une sortie est générée avec 3 panneaux contenant différents boutons. Dans le panneau 1, cinq boutons N, E, W, S et C sont présents tandis que, dans le panneau 2, cinq boutons A, B, C, D et E sont présents. En bas, un panneau d'informations spéciales est également présent.

Conclusion

JSplitPane est un composant Swing en Java qui aide à diviser les composants en fonction de l'implémentation Look & Feel (L&F). De plus, les composants peuvent également être redimensionnés à une taille minimale. Dans ce document, les constructeurs, les méthodes et l'exemple de programme pour JSplitPanel sont discutés en détail.

Article recommandé

Ceci est un guide de JSplitPane. Nous discutons ici des constructeurs JSplitPane et des 30 meilleures méthodes avec sa description ainsi que son implémentation de code. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus -

  1. Constructeur en Java avec types
  2. Constructeur en Python avec avantages
  3. Générateur de nombres aléatoires en C
  4. Variables en C avec ses règles | Top 5 des types
  5. JPanel en Java (fonctions utilisées)
  6. Exemples de JFrame en Java
  7. Générateur de nombres aléatoires dans Matlab
  8. Générateur de nombres aléatoires en C #
  9. JLabel en Java
  10. Flowlayout en Java