zb. deine Buttons heisen "Exite" und "Start" du machst eine If abfrage.
Also du testest welcher Button gedrückt wurde indem du die Aufschrift die der Button trägt vergleichst.
Das "start" vor set Label steht für deinen Namen des Buttons.
Und das was in den Anführungszeichen hinter set Label steht wird neu in den Button rein geschrieben.
Hm, ehrlich gesagt raff ich das grad nich so ganz...
Wär vieleiecht jemand so nett, den Code für mich umzuändern das das ganze mal funzt ??
Ich poste mal die beiden Klassen so wie sie im moment bei mir dastehen:
Klasse Haupt
Code:
import java.awt.*;
public class Haupt extends Frame
{
public Haupt()
{
Button play = new Button("play");
Button exitButton = new Button("exit");
MyActionListener myAL = new MyActionListener();
exitButton.addActionListener(myAL);
play.addActionListener(myAL);
add(exitButton);
add(play);
setLayout (new GridLayout(8,1,20,3));
setSize(300,300);
setVisible(true);
MyWindowListener myWL = new MyWindowListener();
addWindowListener(myWL);
}
public static void main(String args[])
{
Haupt window = new Haupt();
}
}
Und Klasse MyActionListener
Code:
import java.awt.event.*;
import java.awt.*;
public class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent e)
{
String s=e.getActionCommand();
if(s.equals("exit"))
{
exitButton.setLabel("mongo");
System.out.println("exit gedrückt");
}
if(s.equals("play"))
{
System.out.println("start gedrückt");
}
}
}
Wär super wenn mir das jemand ändern könnte, dann könnt ich endlich mal weiter rumprobieren..
Thx,
grüße Benny
Das Problem liegt darin, dass der in Zeile 14 angesprochene Button nicht da ist!
Versuch doch mal die Zeile 14 durch folgende zu ersetzen:
Code:
((Button)e.getSource()).setLabel("mongo");
Hier also nochmal der komplette Code:
Code:
public class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
String s = e.getActionCommand();
if (s.equals("exit")) {
if (e.getSource()instanceof Button) { // Prüfen, ob es sich um einen Button handelt.
( (Button) e.getSource()).setLabel("mongo"); // Test auf dem Button ändern
}
System.out.println("exit gedrückt");
}
if (s.equals("play")) {
System.out.println("start gedrückt");
}
}
}