CardLayout, wechseln Sie zwischen JPanels durch ButtonClick

Möchte ich wechseln zwischen den JPanels, indem Sie auf Tasten auf der JPanels.

Zum Beispiel:
Ich habe ein JPanel-sim mit einem JButton simknop und ein JPanel Hilfe bei JButton helpknop
Ich will wechseln Sie zwischen diesen 2 JPanels durch klicken auf die Schaltflächen. Wenn ich auf JButton simknop JPanel helfen sollte
angezeigt und wenn ich auf JButton Hilfe JPanel sim erscheinen soll.

Unten finden Sie die verschiedenen Klassen:

main.java

public class main extends JFrame
{

    JPanel cards;
    sim sim;
    help help;

    public main()
    {
        this.setSize(1024,768);
        //this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setTitle("Crazy Bombardement");
        this.setLocation(800, 100);//standaard in de hoek van het scherm

        cards = new JPanel();
        cards.setLayout(new CardLayout());
        sim = new sim();
        help = new help();

        cards.add(sim, "SIM");
        cards.add(help, "HELP");    

        this.add(cards);
        this.setVisible(true);
    }

    public static void main(String[] args) 
    {
        new main();
    }

sim.java

public class sim extends JPanel
{
    JButton simknop;

    public sim()
    {
        simknop = new JButton("simknop");
        this.add(simknop);
        this.setBackground(Color.black);
    }

}

help.java

public class help extends JPanel
{
    JButton helpknop;

    public help()
    {
        helpknop = new JButton("helpknop");
        this.add(helpknop);
        this.setBackground(Color.red);
    }

Will ich mit CardLayout für diese, aber ich kann nicht herausfinden, wie man es Arbeit für Sie zu hören, verschiedene ActionListeners.

Jede Hilfe wird sehr geschätzt!

  • 1) "Jede Hilfe ist sehr geschätzt!" Jede Frage wird sehr geschätzt. Haben Sie eine Frage, und wenn ja, was ist es? 2), um besser helfen früher, nach einem SSCCE. Ein SSCCE gemacht werden können, 3 Klassen, so lange wie 2 sind weniger als public. 3) Sie lernen, wie man code formatieren (wählen Sie den eingefügten code und klicken Sie auf die {} Taste über der Nachricht posten/Bearbeiten von form & sicher sein, um die endgültige } (was zu fehlen scheint 2 von 3 der oben genannten Klassen).
  • "//standaard in de hoek van het scherm" Nee! Norm wordt vastgesteld locatie pro Plattform. De zorg er dan commentaar van de code in het Engels in de toekomst, dus ik hoef niet te gebruiken Google vertalen om ze te begrijpen!
InformationsquelleAutor khaled | 2013-04-05
Schreibe einen Kommentar