C
Christian24
Gast
Hallo zusammen! Ich habe ein ärgerliches Problem.
Ich habe eine Klasse erstellt, mit einem Fenster bestehend aus Menüleiste und Symbolleisten. Wenn ich jetzt im Menü einen Eintrag auswähle, sollen im Bereich unter der Symbolleiste die entsprechenden Dinge eingefügt werden.
Im Standardkonstruktor dieser Klasse werden das Frame etc. definiert.
In der Methode actionPerformed die Ereignisse abgefragt.
Wie bekomme ich es jetzt hin, dass ich abhängig vom Ereignis das entsprechende Panel einfügen kann?
Ich wäre euch wahnsinnig dankbar für eine Antwort.
Liebe Grüße
Christian
Edit von L-ectron-X: Code-Tags repariert.
Ich habe eine Klasse erstellt, mit einem Fenster bestehend aus Menüleiste und Symbolleisten. Wenn ich jetzt im Menü einen Eintrag auswähle, sollen im Bereich unter der Symbolleiste die entsprechenden Dinge eingefügt werden.
Im Standardkonstruktor dieser Klasse werden das Frame etc. definiert.
In der Methode actionPerformed die Ereignisse abgefragt.
Wie bekomme ich es jetzt hin, dass ich abhängig vom Ereignis das entsprechende Panel einfügen kann?
Ich wäre euch wahnsinnig dankbar für eine Antwort.
Liebe Grüße
Christian
Code:
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JPanel;
import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.*;
import java.awt.*;
import java.awt.event.KeyEvent;
import java.awt.event.InputEvent;
class ToolBar1Frame extends JFrame {
private String tooltip = Action.SHORT_DESCRIPTION;
private class txtAction extends AbstractAction {
private Container schreibflaeche;
private JButton stornoKnopf;
//
private JPanel ContentPane;
private BorderLayoutPanel Border;
public txtAction(String nme, Icon icon) {
super(nme, icon);
name = nme;
putValue(tooltip, name);
}
public void actionPerformed(ActionEvent ereignis) {
String nachricht = ereignis.getActionCommand();
if (nachricht.equals("Eintragen")) {
ContentPane = (JPanel) getContentPane();
ContentPane.setLayout(new GridLayout(0, 3));
Border = new BorderLayoutPanel();
ContentPane.add(Border);
ContentPane.repaint();
// // label.setText(name);
// hilfsPanel = new JPanel();
// hilfsPanel.setLayout(new GridLayout(1, 3));
// stornoKnopf = new JButton("aktuelle Pizza stornieren");
//
// hilfsPanel.add(stornoKnopf);
// // hilfsPanel.add(new JLabel("TEST"));
// schreibflaeche = getContentPane();
// schreibflaeche.add(hilfsPanel, "South");
//
// stornoKnopf = new JButton("aktuelle Pizza stornieren");
// hilfsPanel.add(stornoKnopf);
// Content.add(hilfsPanel);
//private JPanel centerPanel;
//
//…
//Konstruktor
//Container cp = getContentPane();
//cp.setLayout(new BorderLayout());
//
//hilfsPanel = new JPanel(new GridLayout(2,3,2,2));
//cp.add(hilfsPanel, BorderLayout.CENTER);
//hilfsPanel.add(new Eingabeleiste());
//getContentPane().add(hilfsPanel, BorderLayout.CENTER);
//Eingabefenster inputFrame = new Eingabefenster();
//ntainer hallo = getContentPane();
//meike = new Eingabeleiste();
//inEbene.add(meike, BorderLayout.CENTER);
//hilfe.add(new Eingabeleiste(), BorderLayout.CENTER);
//inEbene.add(new Eingabeleiste(), BorderLayout.CENTER);
// setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
// inputFrame.show();
} else if (nachricht.equals("Anzeigen")) {
// //???nötig
// Eingabefenster tabFrame = new Eingabefenster();
//
// Container hallo2 = getContentPane();
// hallo2.add()
//
Tabelle tab = new Tabelle();
Toolkit kit = Toolkit.getDefaultToolkit();
Dimension bildGr = kit.getScreenSize();
int bsHoehe = bildGr.height;
int bsBreite = bildGr.width;
tab.setLocation(0, 0);
tab.setSize(bsBreite, bsHoehe);
tab.setVisible(true);
// tab.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//tab.setDefaultCloseOperation(tab.EXIT_ON_CLOSE);
setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
// tab.show();
}
}
String name;
// public void actionPerformed(ActionEvent evt) {
// label.setText(name);
// }
// String name;
}
private Action[] acts =
{
new txtAction("Eintragen", new ImageIcon("a.gif")),
new txtAction("Anzeigen", new ImageIcon("b.gif")),
new AbstractAction(
"Beenden",
new ImageIcon(
"c.gif")) {
public void actionPerformed(ActionEvent event) {
System.exit(0);
}
}
};
public ToolBar1Frame() {
Toolkit kit = Toolkit.getDefaultToolkit();
Dimension bildGr = kit.getScreenSize();
int bsHoehe = bildGr.height;
int bsBreite = bildGr.width;
setTitle("Beispiel mit JTextField");
setSize(bsBreite, bsHoehe);
Container inEbene = getContentPane();
// inEbene = getContentPane();
//TEST, vielleicht funktioniert das ja?
// hilfsPanel = new JPanel();
// inEbene.add(hilfsPanel, BorderLayout.CENTER);
//label = new JLabel("Form");
//inEbene.add(label, BorderLayout.CENTER);
//inEbene.add(meike, BorderLayout.CENTER);
// hilfe = getContentPane();
// inEbene.add(hilfe);
hilfsPanel = new JPanel();
//hilfsPanel.setLayout(new GridLayout(1, 3));
// stornoKnopf = new JButton("aktuelle Pizza stornieren");
// hilfsPanel.add(stornoKnopf);
// hilfsPanel.add(new JLabel("TEST"));
//schreibflaeche = getContentPane();
inEbene.add(hilfsPanel, "Center");
acts[2].putValue(tooltip, "Beenden");
JToolBar bar = new JToolBar();
inEbene.add(bar, BorderLayout.NORTH);
JMenu menu = new JMenu("Datei");
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
menuBar.add(menu);
for (int no = 0; no < acts.length - 1; ++no) {
bar.add(acts[no]);
itms[no] = menu.add(acts[no]);
}
menu.addSeparator();
bar.add(acts[2]);
itms[2] = menu.add(acts[2]);
itms[0].setAccelerator(
KeyStroke.getKeyStroke(KeyEvent.VK_K, InputEvent.CTRL_MASK));
}
private JLabel label;
private Eingabeleiste meike;
private JMenuItem[] itms = new JMenuItem[3];
private JPanel hilfsPanel;
//private Container inEbene;
//private Container hilfe;
private Container schreibflaeche;
private JButton stornoKnopf;
}
Edit von L-ectron-X: Code-Tags repariert.