Applikation mit unterschiedlichen Fenstern

Status
Nicht offen für weitere Antworten.

Oni

Top Contributor
guten morgen,
ich habe folgendes problem:
ich möchte eine applikation machen und über ein menü unterschiedliche seiten angezeigt bekommen.
sprich wenn ich auf "Menu1Punkt1" klicke soll mir etwas anderes angezeigt werden als wenn ich auf "Menu2Punkt1" klicke.
ausserdem möchte ich noch button habe die aber nur angezeigt werden wenn ich auf "Menu1Punkt1" klicke. wie kann ich das lösen?
in meine buch gibt es dafür keine beisspiel.



Code:
import java.awt.*;
import java.awt.event.*;

public class MeinCode extends Frame implements ActionListener, WindowListener, KeyListener
{
     private XX rechnerG;
     private MenuItem showRechner;
     private MenuItem eisen, lut, h2;
     private Button go, clear;

     public static void main(String[] args)
     	{
     	Frame f = new MeinCode();
     	f.setSize(300, 300);
     	f.setVisible(true);
     	}

     public MeinCode()
     	{
          setTitle("Rechner2");
          setLayout(new FlowLayout());

          MenuBar menuBar = new MenuBar();    // BAR


          Menu gwRechner = new Menu("Rechner") //MENU1 AUF DEM BAR

          showRechner = new MenuItem("Menu1Punkt1");   // ERSTER UNTERPUNKT IN MENU1
          gwRechner.add(showRechner);
          showRechner.addActionListener(this);
          go = new Button("Berechne");
          add(go);
          go.addActionListener(this);
          clear = new Button("clear");
          add(clear);
          clear.addActionListener(this);

          menuBar.add(gwRechner);


          Menu rohstoffe = new Menu("Stufen"); // MENU2 AUF DEM BAR

          eisen = new MenuItem("Meun2Punkt1");
          rohstoffe.add(eisen);
          eisen.addActionListener(this);
          lut = new MenuItem("num");
          rohstoffe.add(lut);
          lut.addActionListener(this);
          h2 = new MenuItem("ff");
          rohstoffe.add(h2);
          h2.addActionListener(this);

          menuBar.add(rohstoffe);
          setMenuBar(menuBar);

          this.addWindowListener(this);

          rechnerG = new XX();
          }

     public void actionPerformed(ActionEvent event)
     	{
          if(event.getSource() == showRechner)
          	rechnerG.zeigeR(1);
          if(event.getSource() == eisen)
          	rechnerG.zeigeE(1);
          if(event.getSource() == lut)
          	rechnerG.zeigeL(1);
          if(event.getSource() == h2)
          	rechnerG.zeigeH2(1);
          repaint();
          }

     public void paint(Graphics g)
     	{
          rechnerG.anzeigen(g);
          }

     public void windowClosing(WindowEvent event)                 //WINDOWEVENT
     	{
          System.exit(0);
          }

     public void windowIconified(WindowEvent event)
     	{
          }

     public void windowOpened(WindowEvent event)
     	{
         	}

     public void windowClosed(WindowEvent event)
     	{
          }

     public void windowDeiconified(WindowEvent event)
     	{
          }

     public void windowActivated(WindowEvent event)
     	{
          }

     public void windowDeactivated(WindowEvent event)
     	{
		}

     public void keyTyped(KeyEvent event)                           // KEYEVENT
     	{
          }

   	public void keyReleased(KeyEvent event)
     	{
          }

   	public void keyPressed(KeyEvent event)
     	{
          }
}
class XX
{
     private int x = 0;

     public void anzeigen(Graphics g)
     	{
          g.drawOval(50, 50, 50, 50);
          }

     public void zeigeR(int X)
     	{
          ...
          }

      public void zeigeE(int X)
     	{
          ...
          }

      public void zeigeL(int X)
     	{
          ...
          }

      public void zeigeH2(int X)
     	{
          ...
          }
}
 

Oni

Top Contributor
gibt es noch eine andere möglichkeit ausser cardlayout?
weil damit wüsste ich nicht wirklich was anzufangen.
irgendwas was ich einfach(er) oben in den code einbauen könnte?
 

Oni

Top Contributor
ich habe das mal probiert einzubauen, aber erzeigt mir das ganze nicht an. wo liegt der fehler ?
kann man bei cardlayout auch unterpunkte machen wie bei menu ?

Code:
import java.awt.*;
import java.awt.event.*;

public class Galaxywars2 extends Frame implements ActionListener, WindowListener, KeyListener
{
     private Galaxy rechnerG;
     private MenuItem showRechner;
     private MenuItem eisen, lut, h2;
     private Button go, clear;
     private int b1 = 0;
     Panel cards;
   	private final static String rechnerPanel = "Rechner";
	private final static String stufenPanel = "RohstoffStufen";


     public static void main(String[] args)
     	{
     	Frame f = new Galaxywars2();
     	f.setSize(300, 300);
     	f.setVisible(true);
     	}

     public Galaxywars2()
     	{
          setTitle("Galaxywars-Rechner2");

          /* setLayout(new FlowLayout());
          MenuBar menuBar = new MenuBar();    // BAR
          */
          Panel card1 = new Panel();
          Panel card2 = new Panel();

          cards = new Panel(new CardLayout());
		cards.add(card1, rechnerPanel);
		cards.add(card2, stufenPanel);


          /* Menu gwRechner = new Menu("Rechner");    // MENU1 AUF DEM BAR

          showRechner = new MenuItem("Rechner");   // ERSTER UNTERPUNKT IN MENU1
          gwRechner.add(showRechner);
          showRechner.addActionListener(this);
          */
          go = new Button("Berechne");
          card1.add(go);
     	go.addActionListener(this);
          clear = new Button("clear");
          card2.add(clear);
          clear.addActionListener(this);

         /*
          menuBar.add(gwRechner);
          add(panel1);

          Menu rohstoffe = new Menu("Stufen"); // MENU2 AUF DEM BAR

          eisen = new MenuItem("Eisen");
          rohstoffe.add(eisen);
          eisen.addActionListener(this);
          lut = new MenuItem("Lutinum");
          rohstoffe.add(lut);
          lut.addActionListener(this);
          h2 = new MenuItem("Wasserstoff");
          rohstoffe.add(h2);
          h2.addActionListener(this);
          add(panel2);
          menuBar.add(rohstoffe);
          setMenuBar(menuBar);
         */
          this.addWindowListener(this);

          rechnerG = new Galaxy();
          }

     public void actionPerformed(ActionEvent event)
     	{
          if(event.getSource() == showRechner)

          if(event.getSource() == eisen)
          	rechnerG.zeigeE(1);
          if(event.getSource() == lut)
          	rechnerG.zeigeL(1);
          if(event.getSource() == h2)
          	rechnerG.zeigeH2(1);
          repaint();
          }

     public void paint(Graphics g)
     	{
          rechnerG.anzeigen(g);
          }

     public void windowClosing(WindowEvent event)                 //WINDOWEVENT
     	{
          System.exit(0);
          }

     public void windowIconified(WindowEvent event)
     	{
          }

     public void windowOpened(WindowEvent event)
     	{
         	}

     public void windowClosed(WindowEvent event)
     	{
          }

     public void windowDeiconified(WindowEvent event)
     	{
          }

     public void windowActivated(WindowEvent event)
     	{
          }

     public void windowDeactivated(WindowEvent event)
     	{
		}

     public void keyTyped(KeyEvent event)                           // KEYEVENT
     	{
          }

   	public void keyReleased(KeyEvent event)
     	{
          }

   	public void keyPressed(KeyEvent event)
     	{
          }
}
class Galaxy
{
     private int x = 0;

     public void anzeigen(Graphics g)
     	{
          g.drawOval(50, 50, 50, 50);
          }

     public void zeigeR(int X)
     	{
          x = x + X;
          }

      public void zeigeE(int X)
     	{
          x = x + X;
          }

      public void zeigeL(int X)
     	{
          x = x + X;
          }

      public void zeigeH2(int X)
     	{
          x = x + X;
          }
}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
ExceptionOfExpectation Mit einer laufenden GUI Applikation eine Datei in dem Rechner löschen AWT, Swing, JavaFX & SWT 2
N JavaFX applikation auf anderen Systemen zum laufen bringen AWT, Swing, JavaFX & SWT 7
S Swing-Applikation die ein Numpad nachbildet samt Keybindings..? AWT, Swing, JavaFX & SWT 5
M JavaFX Applikation lädt Scrollpanes nicht AWT, Swing, JavaFX & SWT 19
N Applikation startet nicht AWT, Swing, JavaFX & SWT 2
L LookAndFeel Eigenes Design für die Applikation AWT, Swing, JavaFX & SWT 4
M Applikation mit mehreren Scenes AWT, Swing, JavaFX & SWT 5
C Swing globale "Key Bindings" für Swing-Applikation AWT, Swing, JavaFX & SWT 6
D JDialog alwaysOnTop, aber nur innerhalb der Applikation AWT, Swing, JavaFX & SWT 3
C Java-applikation über Fullscreen AWT, Swing, JavaFX & SWT 4
dzim SWT SWT-AWT-Problem: Crash einer Applikation AWT, Swing, JavaFX & SWT 8
maddin86 Browserfenster / Webbrowser in Java Applikation einbetten AWT, Swing, JavaFX & SWT 15
S Client-Server-Applikation mit GUI - Bugs ausmerzen AWT, Swing, JavaFX & SWT 4
B Swing Sprünge in einer Swing Desktop Applikation AWT, Swing, JavaFX & SWT 2
L JavaFX in Java Applikation einbinden AWT, Swing, JavaFX & SWT 2
M Swing Java Applikation in MVC gut strukturieren AWT, Swing, JavaFX & SWT 14
M Swing Ändern des Themes einer fremden Applikation AWT, Swing, JavaFX & SWT 8
R Applikation so sehen wie ein Saudi oder Japaner..? AWT, Swing, JavaFX & SWT 4
S Allgemeine Frage zur Unterbringung von allgemeinen Daten einer Applikation AWT, Swing, JavaFX & SWT 2
P Schriftart setzen für die ganze Applikation AWT, Swing, JavaFX & SWT 3
J Applikation als Desktop-"Widget" AWT, Swing, JavaFX & SWT 2
GambaJo GUI sieht in NB anders aus, als fertige Applikation AWT, Swing, JavaFX & SWT 2
T WaitCursor zuverlässig für die ganze Applikation setzen? AWT, Swing, JavaFX & SWT 3
W Soundeffekt in Applikation AWT, Swing, JavaFX & SWT 3
G Desktopverhalten einer Applikation AWT, Swing, JavaFX & SWT 6
M Windows-Fensterinhalt in Java-Applikation darstellen AWT, Swing, JavaFX & SWT 6
M Swing Applikation mit Fenster "inside" AWT, Swing, JavaFX & SWT 2
M google maps in Java-Applikation AWT, Swing, JavaFX & SWT 13
S Tastaturevents an eine externe Applikation weiter leiten AWT, Swing, JavaFX & SWT 6
G Seltsames Phänomen beim starten meiner Applikation AWT, Swing, JavaFX & SWT 8
isowiz Einige Fragen zur ersten eigenen Sing-Applikation AWT, Swing, JavaFX & SWT 4
A Applikation mit Netbeans-Design AWT, Swing, JavaFX & SWT 4
L Java-Logo in Java-Applikation durch eignes ersetzen AWT, Swing, JavaFX & SWT 12
M Anzeigefehler nach langer Laufzeit der Applikation AWT, Swing, JavaFX & SWT 4
N Netzwerk-Applikation, SWT und Threads AWT, Swing, JavaFX & SWT 4
G ConsolenFenster in Applikation einbinden? AWT, Swing, JavaFX & SWT 2
O Problem beim Umwandeln eines Applets in eine Applikation AWT, Swing, JavaFX & SWT 15
G Mediaplayer oder ähnliches in Java-Applikation einbinden AWT, Swing, JavaFX & SWT 2
Apfelbaum2005 Swing JFrame mehrere JPanels mit unterschiedlichen Formen hinzufügen AWT, Swing, JavaFX & SWT 1
A Swing Textübergabe innerhalb der Anwendung in unterschiedlichen Fenster AWT, Swing, JavaFX & SWT 8
F JButtons erstellen lassen mit unterschiedlichen Funktionen AWT, Swing, JavaFX & SWT 3
P Swing String mit unterschiedlichen Formaten zusammenbauen AWT, Swing, JavaFX & SWT 14
K 3D-Grafik 2 "Boxen" auf unterschiedlichen Koordinaten AWT, Swing, JavaFX & SWT 2
C SWT group Elemete mit unterschiedlichen Größen angeben AWT, Swing, JavaFX & SWT 6
D Problem mit unterschiedlichen Ladezeiten von Bildern / Blockieren der UI AWT, Swing, JavaFX & SWT 5
W Swing JFrame mit unterschiedlichen JPanels AWT, Swing, JavaFX & SWT 2
N Graphics2D mit unterschiedlichen Grauwerten befüllen AWT, Swing, JavaFX & SWT 3
D Textfeld mit unterschiedlichen Formatierungen AWT, Swing, JavaFX & SWT 3
F Text mit unterschiedlichen Schriftfarben, -arten und stilen AWT, Swing, JavaFX & SWT 3
M Problem mit LookAndFeel auf unterschiedlichen Rechnern AWT, Swing, JavaFX & SWT 3
F HILFE!!! Focus-Probleme bei unterschiedlichen Panel's AWT, Swing, JavaFX & SWT 3
MiMa Optimieren einer Methode zum Zentrieren von Fenstern AWT, Swing, JavaFX & SWT 0
G 2D-Grafik Grafik in zwei verschiedenen Fenstern gleichzeitig zeichnen AWT, Swing, JavaFX & SWT 9
F Menüs in allen Fenstern anzeigen AWT, Swing, JavaFX & SWT 12
F Swing JAVA GUI Übergabe von Werten zwischen mehreren Fenstern/Klassen AWT, Swing, JavaFX & SWT 10
B Kommunikation zwischen zwei Fenstern und vorübergehende Speicherung der Eingaben AWT, Swing, JavaFX & SWT 4
L Zeichnen in zwei Fenstern AWT, Swing, JavaFX & SWT 8
JStickman SWT Problem mit Fenstern AWT, Swing, JavaFX & SWT 7
F Initialisieren von Fenstern über Methoden AWT, Swing, JavaFX & SWT 3
U MVC: Rolle vom MainController zu Fenstern, Unterfenster u. Listenern AWT, Swing, JavaFX & SWT 8
I Arbeiten mit mehreren Fenstern AWT, Swing, JavaFX & SWT 4
X Wie passt JIternalFrame sich den anderen Fenstern an? AWT, Swing, JavaFX & SWT 3
Herr.Jth Frage zu inaktiven Fenstern AWT, Swing, JavaFX & SWT 7
M Hintergrundgrafik in Swing-Fenstern AWT, Swing, JavaFX & SWT 11
R Navigieren zwischen mehreren Fenstern AWT, Swing, JavaFX & SWT 7
C Probleme beim ausführen von Programmen mit Fenstern+Inhalt AWT, Swing, JavaFX & SWT 3
U Anwendung mit mehreren "Fenstern" AWT, Swing, JavaFX & SWT 4
H Problem mit Layout Fenstern (Swing) AWT, Swing, JavaFX & SWT 3
L GUI - 2 Buttons mit 2 Fenstern verlinken AWT, Swing, JavaFX & SWT 4
K JFrames in verschiedenen Fenstern AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben