so würde es wahrscheinlich funktionieren, aber ist es auch mit der contentpane möglich?
Bsp:
box1 (enthält die Buttons 1-5)
contentPane.add(box1);
box2 (enthält Buttons 6-10)
Button Abfrage (wenn Button 2 gedrückt
contentPane.add(box2);
So versuch ich desnämlich zurzeit..(Klappt aber noch nicht)
Gruß TRX
EDIT:
Habs jetzt doch geschafft!
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class LAF extends JFrame {
JPanel box1;
JPanel box2;
JButton bmotif, bwindows, bmetal, bumschalt;
JCheckBox chk1, chk2;
ButtonListener butLis = new ButtonListener();
Container contentPane = getContentPane();
public LAF() {
super();
// Hauptfenster einrichten
setTitle("Look and Feel");
contentPane.setBackground(Color.LIGHT_GRAY);
//Box 2
box2 = new JPanel();
bmotif = new JButton("Motif");
bwindows = new JButton("Windows");
bmetal = new JButton("Metal");
bmotif.addActionListener(butLis);
bwindows.addActionListener(butLis);
bmetal.addActionListener(butLis);
box2.add(bmotif);
box2.add(bwindows);
box2.add(bmetal);
// Box 1
box1 = new JPanel();
bumschalt = new JButton("Umschalten");
bumschalt.addActionListener(butLis);
chk1 = new JCheckBox("Unterstrichen");
chk2 = new JCheckBox("Kursiv");
box1.add(chk1);
box1.add(chk2);
box1.add(bumschalt);
contentPane.add(box1);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
// Hier Ereignisbehandlungsmethoden für Komponenten
// Ereignisbehandlung für Schaltflächen zum
// Umschalten des Look&Feels
class ButtonListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
try {
if (e.getSource()==bmotif)
UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel");
if (e.getSource()==bwindows)
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
if (e.getSource()==bmetal)
UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
if (e.getSource()==bumschalt)
contentPane.remove(box1);
contentPane.add(box2);
}
catch(Exception ex) {
}
// Das neue Look&Feel allen Komponenten mitteilen
SwingUtilities.updateComponentTreeUI(contentPane);
}
}
public static void main(String args[]) {
// Fenster erzeugen und anzeigen
LAF hauptfenster = new LAF();
hauptfenster.setSize(300,200);
hauptfenster.setLocation(200,300);
hauptfenster.setVisible(true);
}
}
Ich denk der Code ist selbsterklärend..
Ist nur teilweise von mir, deshalb auch so zusammen gestückelt. ;-)