Nwlapcug.com


Come nascondere un pannello in un JSplitPane

JSplitPanel è un componente Java linguaggio di programmazione che consente di visualizzare due pannelli, dividere orizzontalmente o verticalmente. Ulteriori componenti possono essere aggiunti a ogni riquadro con le proprie funzionalità indipendenti. Come tutti i componenti Java, un programmatore può impostare dimensioni del pannello di Spalato specificando la larghezza preferita e l'altezza in numero di pixel e indicato le coordinate pixel dove ha origine il pannello disegnato sullo schermo. A volte un programmatore potrebbe voler nascondere un pannello per la successiva visualizzazione mentre permetterà l'altro pannello di rimanere visibile. Questo viene fatto aggiungendo l'aggiunta di JButtons con funzionalità speciali per i pannelli.

Istruzioni

1

Utilizzare la parola chiave di Java "Importa" per caricare i pacchetti Java corretto nel tuo IDE. Nel caso di questo programma sono questi pacchetti Java. awt, java.awt.event e javax. swing. Il codice è simile al seguente:

importazione java.awt.*;

importazione java.awt.event.*;

importazione javax.swing.*;

2

Creare una classe Java per contenere le istruzioni di programmazione che danno all'utente il potere di nascondere uno dei pannelli di un riquadro di Spalato. Inoltre, creare il metodo "main" in modo che il programma verrà eseguito. Utilizzando una classe di esempio per illustrare la sintassi corretta è simile al seguente:

public class HidePane {

public static void main(String[] args) {

}

}

3

Creare un contenitore di JFrame dovrà contenere il componente JSplitPane quindi creare JButton componenti per dare funzionalità al riquadro. Creare il JSplitPane per tenere i componenti JButton. Codice di esempio:

Telaio di JFrame = nuovo JFrame();

finale JPanel contentPane = (JPanel)frame.getContentPane();

finale JButton leftButton = new JButton ("tasto sinistro");

finale JButton rightButton = new JButton ("Right Button);

finale JSplitPane splitPane = new JSplitPane (Horizontal_split, leftButton, rightButton);

4

Creare una classe ActionListener e l'override del metodo "actionPerformed" all'interno della classe per legare la la funzione di nascondere ai due pulsanti. Un'istruzione if-else viene utilizzata per determinare o meno il riquadro di divisione deve essere visibile. Istruire il contenitore venga ridisegnata automaticamente quando le condizioni cambiano. Codice di esempio:

ActionListener actionListener = new ActionListener() () {

JButton source = (JButton)e.getSource();

if (splitPane.isVisible()) {

splitPane.remove(rightButton);

splitPane.remove(leftButton);

splitPane.setVisible(false);

contentPane.removeAll();

contentPane.add(source);

} else {

contentPane.removeAll();

splitPane.setLeftComponent(leftButton);

splitPane.setRightComponent(rightButton);

splitPane.setDividerLocation(0.5);

splitPane.setVisible(true);

contentPane.add(splitPane);

}

contentPane.revalidate();

contentPane.repaint();

source.requestFocusInWindow();

}

};

5

Aggiungere l'ActionListener ai pulsanti e aggiungere il riquadro al riquadro contenitore. Impostare le dimensioni del riquadro e assicurarsi che sia visibile. Infine, istruire il programma per uscire una volta che il riquadro è chiuso. Codice di esempio:

rightButton.addActionListener(actionListener);

leftButton.addActiionListener(actionListener);

contentPane.add(splitPane);

contentPane.setPreferredSize (nuova dimensione (800, 600));

frame.Pack();

frame.setLocationRelative(null);

frame.setVisible(true);

splitPane.setDividerLocation(0.5);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

6

Combinare insieme le parti del programma in classe principale. Codice di esempio:

importazione java.awt.*;

importazione java.awt.event.*;

importazione javax.swing.*;

public class HidePane {

public static void main(String[] args) {

JFrame frame = new JFrame();

final JPanel contentPane = (JPanel)frame.getContentPane();

final JButton leftButton = new JButton("Left Button");

final JButton rightButton = new JButton("Right Button);

final JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftButton, rightButton);

ActionListener actionListener = new ActionListener() {

JButton source = (JButton)e.getSource();

if (splitPane.isVisible()) {

splitPane.remove(rightButton);

splitPane.remove(leftButton);

splitPane.setVisible(false);

contentPane.removeAll();

contentPane.add(source);

} else {

contentPane.removeAll();

splitPane.setLeftComponent(leftButton);

splitPane.setRightComponent(rightButton);

splitPane.setDividerLocation(0.5);

splitPane.setVisible(true);

contentPane.add(splitPane);

}

contentPane.revalidate();

contentPane.repaint();

source.requestFocusInWindow();

}

};

rightButton.addActionListener(actionListener);

leftButton.addActiionListener(actionListener);

contentPane.add(splitPane);

contentPane.setPreferredSize (nuova dimensione (800, 600));

frame.Pack();

frame.setLocationRelative(null);

frame.setVisible(true);

splitPane.setDividerLocation(0.5);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}