Hallo community,
ich hab ein Problem. Ich benutze JMenus um verschiedene Panels anzuzeigen. Damit diese sich jedoch nicht überlappen, benutze ich
. Hier mal ein Ausschnitt von meinem Code:
wenn ich das jetzt zweimal aufrufe, überlappt sich das alles und wird zu einem großen kuddelmuddel ;(
kann mir da jemand helfen?
Das mit dem
hab ich in einem anderen Forum gelesen, ich weiß nicht was das soll, genau das gleiche mit dem
:rtfm:
Kann mir da jemand helfen, damit das JPane davor weggemacht und wieder hinzugefügt werden kann?
ich hab ein Problem. Ich benutze JMenus um verschiedene Panels anzuzeigen. Damit diese sich jedoch nicht überlappen, benutze ich
Code:
remove(JPanel);
Java:
JTextField nameField;
JTextField dateField;
JTextField anzahlKartonsField;
JPanel mainPanel1 = new JPanel();
JPanel mainPanel2 = new JPanel();
JTextField field;
private void makeMenus()
{
final JMenuBar bar = new JMenuBar();
JMenu datei = new JMenu("Fichier");
JMenu suchen = new JMenu("Chercher");
JMenu suchenKlient = new JMenu("Chercher client");
JMenuItem neuerKlient = new JMenuItem("Nouveau client");
JMenuItem exit = new JMenuItem("Quitter");
JMenuItem suchenKlientName = new JMenuItem("Par nom");
JMenuItem suchenKlientNummer = new JMenuItem("Par numero de client");
JMenuItem suchenKlientNummerVertrag = new JMenuItem("Par numero de contrat");
bar.add(datei);
bar.add(suchen);
datei.add(neuerKlient);
datei.add(exit);
suchen.add(suchenKlient);
suchenKlient.add(suchenKlientName);
suchenKlient.add(suchenKlientNummer);
suchenKlient.add(suchenKlientNummerVertrag);
neuerKlient.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
getContentPane().remove(mainPanel1);
getContentPane().invalidate();
getContentPane().validate();
getContentPane().remove(mainPanel2);
getContentPane().validate();
JButton go = new JButton("Creer nouveau client");
go.addActionListener(new GoButtonListener());
JLabel nameLabel = new JLabel("Nom");
JLabel dateLabel = new JLabel("Date du contrat");
JLabel anzahlKartonsLabel = new JLabel("Nombre de Tonnage");
nameField = new JTextField(20);
dateField = new JTextField(20);
anzahlKartonsField = new JTextField(20);
mainPanel1.setLayout(new GridLayout(4, 2));
mainPanel1.add(nameLabel);
mainPanel1.add(nameField);
mainPanel1.add(dateLabel);
mainPanel1.add(dateField);
mainPanel1.add(anzahlKartonsLabel);
mainPanel1.add(anzahlKartonsField);
mainPanel1.add(new JLabel("")); // GLUE
mainPanel1.add(go);
getContentPane().add(mainPanel1);
getContentPane().invalidate();
getContentPane().validate();
}
});
wenn ich das jetzt zweimal aufrufe, überlappt sich das alles und wird zu einem großen kuddelmuddel ;(
kann mir da jemand helfen?
Das mit dem
Code:
invalidate();
Code:
getContentPane()
Kann mir da jemand helfen, damit das JPane davor weggemacht und wieder hinzugefügt werden kann?