hi...ich wollt jetzt mit Menüs arbeiten..hab aber irgendwie Probleme...
ich muss ja die MenuItems mit addActionListener(this) registrieren oder?
Das funktioniert aber irgendwie nicht!
Hab ich da was vergessen?
ich muss ja die MenuItems mit addActionListener(this) registrieren oder?
Das funktioniert aber irgendwie nicht!
Hab ich da was vergessen?
Code:
import java.awt.Color;
import java.awt.Container;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowListener;
import java.awt.event.WindowAdapter;
import javax.swing.JFrame;
public class PaintFrame extends JFrame implements ActionListener{
private Zeichenflaeche zeichenflaeche;
Figure f;
public PaintFrame(String titel){
super(titel);
zeichenflaeche=new Zeichenflaeche();
getContentPane().add(zeichenflaeche);
zeichenflaeche.setSize(getContentPane().getSize());
zeichenflaeche.setFocusable(true);
zeichenflaeche.requestFocus();
}
public void makeMenu(){
MenuBar bar=new MenuBar();
Menu m = new Menu("Look & Feel");
MenuItem red=new MenuItem("Red");
MenuItem blue=new MenuItem("Blue");
MenuItem green=new MenuItem("Green");
m.add(red);
red.addActionListener(this);
m.add(blue);
blue.addActionListener(this);
m.add(green);
green.addActionListener(this);
bar.add(m);
setMenuBar(bar);
System.out.println("ccc");
}
public void actionPerformed(ActionEvent e) {
String menu=e.getActionCommand();
if(menu.equals("Red")){
f.setColor(Color.red);
System.out.println("Rot wurde ausgewählt");
}
else if(menu.equals("Blue")){
f.setColor(Color.blue);
System.out.println("Blau wurde ausgewählt");
}
else if(menu.equals("Green")){
f.setColor(Color.green);
System.out.println("Grün wurde ausgewählt");
}
}
public static void main(String [] args){
PaintFrame frame=new PaintFrame("Zeichenprogramm");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(600,600);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
frame.makeMenu();
}
}