addActionListener(this) - Fehlermeldung

ChrisB.

Mitglied
Guten Tag,
und zwar bekomme ich bei folgedem Code eine Fehlermeldung, wenn ich vom Mainmenu einzelne Einträge den ActionListener zuweisen will um später Aktionen ausführen zu können:

Java:
JMenuBar jmb = new JMenuBar();
        
        JMenu jmFile = new JMenu("Datei");
          JMenuItem Reset = new JMenuItem("Alles löschen");
          JMenuItem Save  = new JMenuItem("Speichern");
          JMenuItem Exit  = new JMenuItem("Beenden");
            jmFile.add(Reset);
            jmFile.add(Save);
            jmFile.addSeparator();
            jmFile.add(Exit);
            
            Reset.addActionListener(this);
            Save.addActionListener(this);
            Exit.addActionListener(this);
            

        jmb.add(jmFile);

Unterkringelt ist dieses .addActionListener(this)

Und als Fehlermeldung kommt dies:

The method addActionListener(ActionListener) in the type AbstractButton is not applicable for the arguments

Import habe ich auch eingetragen:

Java:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
.

Bei meinem anderen Javacode ging das einwandfrei.

Ich hoffe ihr könnt mir helfen :).
 

njans

Top Contributor
ActionListener ist ein Interface. Wenn du "this" übergibst, dann muss dieses Objekt auch das Interface implementieren und die Methoden überschreiben.
 

ChrisB.

Mitglied
Das hast du damit nicht gemeint oder?

Java:
            ActionListener l = null;
			Reset.addActionListener(l);
			Save.addActionListener(l);
			Exit.addActionListener(l);

Eine Fehlermeldung zeigt er nicht an und kompilieren lässt sich das auch.
 
Zuletzt bearbeitet:

njans

Top Contributor
Nein, du deklarierst eine Variable vom Typ ActionListener und initialisiert diese mit null.
Und wenn du da schon einen erstellen willst (so nehme ich an) dann macht es keinen Sinn "this" zu übergeben.
 

ChrisB.

Mitglied
@JavaMeister:

Aber da steht es doch genauso wie ich es gemacht habe?

//edit:

Auf einmal geht das o_O, habe zwar nichts geändert aber ....

Naja, danke an die die geholfen haben !
 
Zuletzt bearbeitet:

qexxler

Aktives Mitglied
Es wäre für das Verständnis trotzdem hilfreich, wenn du verstehen würdest, warum es denn nun funktioniert.

Bei einem JButton kann man verschiedene Listener registrieren; in deinem Fall ist dies ein ActionListener. Das heißt allerdings, dass du dort auch eine Instanz eines solchen Listener übergeben musst. Da du in deinem Fall
Java:
this
übergeben hast, heißt das, dass deine Klasse das ActionListener Interface implementier haben muss, da du das der Methode
Java:
addActionListener()
mit dem Übergebenen Paramater
Java:
this
gesagt hast. Das heißt also, dass du zwei Dinge zu tun hast:


1.) Deine Klasse muss das ActionListener - Interface implementieren
Java:
class MeineKlasse implements ActionListener

2.) Musst du die Methode
Java:
public void actionPerformed(ActionEvent e)
überschreiben und dort den Code hineinschreiben, der bei einer Aktion durchgeführt werden soll. Da du bei allen drei Buttons den gleichen ActionListener, in deinem Fall
Java:
this
, übergeben hast, musst du in dieser Methode noch einmal unterscheiden, welcher Button nun genau geklickt wurde.

Ich hoffe, ich konnte dir da etwas helfen. Falls du noch Fragen hast, einfach hier rein. ;-)


Kleiner Tipp noch von mir: Variablen beginnen "immer" mit einem kleinen Buchstaben, sofern es sich nicht um Konstanten handelt.

Man möge mir meine In Bezug auf die Variablen ungenaue Defintion verzeihen. Ohne Kaffee ist es schwer am Morgen. ;-)


Liebe Grüße kaffeeliebhaber
 

ChrisB.

Mitglied
Ahhh ich verstehe, ich glaube mein Fehler lag daran das ich meiner Klasse nicht das ActionListener implementiert habe.

Aber Dankeschön für diese ausführliche Erklärung!

Edit:

Ich habe doch noch eine Frage:

Warum zeigt er mir bei "this.button1" einen Fehler an? Bzw. er unterkringelt mir button1 hierbei und sagt: "cannot be resolved or is not a field" ?

Java:
      Button button1 = new Button("New button");
      button1.setBounds(25, 183, 70, 22);
      getContentPane().add(button1);
      button1.addActionListener(this);

	}
	
    public void actionPerformed(ActionEvent aevent) 
    {
  
      if (aevent.getSource() == this.button1)
      {
        System.exit(-1);
      }
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
D addActionListener zeigt keine Wirkung Java Basics - Anfänger-Themen 8
J button.addActionListener(this); - Welches this ist gemeint? Java Basics - Anfänger-Themen 7
M JPanel.addActionListener Java Basics - Anfänger-Themen 5
H addActionListener und setActionCommand ohne Wirkung Java Basics - Anfänger-Themen 2
D addActionListener Java Basics - Anfänger-Themen 28
S Menü addActionListener Java Basics - Anfänger-Themen 11
J wo finde ich die methode addactionlistener in der api ? Java Basics - Anfänger-Themen 5
Ronny123 Erste Schritte Fehlermeldung Java Basics - Anfänger-Themen 1
F Fehlermeldung in Eclipse Java Basics - Anfänger-Themen 13
AllBlack Fehlermeldung Java Basics - Anfänger-Themen 19
Finn_lol Fehlermeldung bei Schleife mit Array Java Basics - Anfänger-Themen 4
N Ich kriege ganze zeit die Fehlermeldung "Inhalt der Zwischenablage kann nicht in die ausgewählten Elemente eingefügt werden" hat jemand eine Lösung? Java Basics - Anfänger-Themen 6
P Java Selenium . Parameterized.Parameters erzeugt eine Fehlermeldung Java Basics - Anfänger-Themen 14
J Fehlermeldung unverständlich für Jakarta Java Basics - Anfänger-Themen 17
Ostkreuz Fehlermeldung Java Basics - Anfänger-Themen 1
_so_far_away_ Fehlermeldung "Index 2 out of bounds for length 2" Java Basics - Anfänger-Themen 7
W Texteingabe - Bedeutung Fehlermeldung, Lösung? Java Basics - Anfänger-Themen 18
krgewb Fehlermeldung in web.xml Java Basics - Anfänger-Themen 4
W Warum diese Fehlermeldung? Java Basics - Anfänger-Themen 12
nbergmann Unverständliche Fehlermeldung Java Basics - Anfänger-Themen 56
E fehlermeldung bei richtigen login daten Java Basics - Anfänger-Themen 7
J Fehlermeldung im Checkstyle Java Basics - Anfänger-Themen 11
S Fehlermeldung Java Basics - Anfänger-Themen 7
B Compiler-Fehler Fehlermeldung Exception in thread, falsche Eingabewert Java Basics - Anfänger-Themen 2
EchtKeineAhnungManchmal Hallo :) ich bekomme es nicht hin eine Fehlermeldung auszugeben über die GUI Java Basics - Anfänger-Themen 3
C Fehlermeldung Array zuweisen und printen Java Basics - Anfänger-Themen 22
J Fehlermeldung Java Basics - Anfänger-Themen 22
J Fehlermeldung: A JNI error Java Basics - Anfänger-Themen 3
R Fehlermeldung aber WO liegt der Fehler? Java Basics - Anfänger-Themen 7
JavaClara Fehlermeldung bei split-Methode Java Basics - Anfänger-Themen 12
F Fehlermeldung java.lang.NullPointerException Java Basics - Anfänger-Themen 4
C Fehlermeldung InOut. Java Basics - Anfänger-Themen 7
B Methoden if-statement error, FX, Fehlermeldung Java Basics - Anfänger-Themen 6
A Fehlermeldung Java Basics - Anfänger-Themen 5
H Comparator Fehlermeldung Java Basics - Anfänger-Themen 5
D Folgende Fehlermeldung bei der Installation von JAVAFX Java Basics - Anfänger-Themen 1
M Java heap space Fehlermeldung beheben Java Basics - Anfänger-Themen 3
J Fehlermeldung unklar. non-static variable player0 cannot be referenced from a static context Java Basics - Anfänger-Themen 4
T Fehlermeldung beim Versuch, einen String einzulesen Java Basics - Anfänger-Themen 4
S Bitte Hilfe zu Fehlermeldung am Handy Java Basics - Anfänger-Themen 2
H fehlermeldung Java Basics - Anfänger-Themen 447
H fehlermeldung Java Basics - Anfänger-Themen 9
T Fehlermeldung beim Starten von FlashTool Java Basics - Anfänger-Themen 27
C Fehlermeldung mit Intger. Java Basics - Anfänger-Themen 3
A Fehlermeldung Java Basics - Anfänger-Themen 3
D Wie kann man eine solche Fehlermeldung abfangen Java Basics - Anfänger-Themen 4
H Fehlermeldung bei der Ausführung eines Compilierten PRGs Java Basics - Anfänger-Themen 9
N Fehlermeldung beim ausführen des Programmes.. Java Basics - Anfänger-Themen 3
x-tshainge Fehlermeldung Java Basics - Anfänger-Themen 2
M Erste Schritte NetBeans Fehlermeldung Java Basics - Anfänger-Themen 2
D Fehlermeldung obwohl Variablen bereits deklariert sind? Java Basics - Anfänger-Themen 14
N Fehlermeldung bei Methode Java Basics - Anfänger-Themen 12
I String index out of range Fehlermeldung Java Basics - Anfänger-Themen 4
I Fehlermeldung bei Darstellung von Arrays Java Basics - Anfänger-Themen 2
S Variablen JLabel backImagePanel Fehlermeldung Java Basics - Anfänger-Themen 3
A checkstyle Fehlermeldung Java Basics - Anfänger-Themen 1
G Compiler-Fehler Fehlermeldung Java Basics - Anfänger-Themen 3
Pr0m3theus Fehlermeldung ArrayList add Java Basics - Anfänger-Themen 12
Arabicabohne Fehlermeldung bei Eclipse Java Basics - Anfänger-Themen 23
lBlKha0s Fehlermeldung : class interface or enum expected Java Basics - Anfänger-Themen 9
TheMenox Fehlermeldung / Arrays, Enhanced For Loops Java Basics - Anfänger-Themen 16
D Compiler-Fehler Anfänger Fehlermeldung Java Basics - Anfänger-Themen 3
Henri Fehlermeldung Java Basics - Anfänger-Themen 2
K Erste Schritte Fehlermeldung Java Basics - Anfänger-Themen 2
I Fehlermeldung: Java does not contain a main type Java Basics - Anfänger-Themen 1
J Fehlermeldung : cannot invoke char(at) int on the primitive type int --- Anfänger Java Basics - Anfänger-Themen 5
J Bug? Seltsame Fehlermeldung Java Basics - Anfänger-Themen 7
J Fehlermeldung else without if Java Basics - Anfänger-Themen 5
J while(nst == 0) gibt Fehlermeldung Java Basics - Anfänger-Themen 4
L Fehlermeldung Java Basics - Anfänger-Themen 6
D Erste Schritte Fehlermeldung "Syntax error on token ";", { expected after this token" Java Basics - Anfänger-Themen 13
J Launcher Fehlermeldung Java Basics - Anfänger-Themen 0
A Fehlermeldung Unklar, google hilft auch nicht weiter Java Basics - Anfänger-Themen 2
H Compiler-Fehler Fehlermeldung Kompilier Java Basics - Anfänger-Themen 4
A Fehlermeldung Unklar. Java Basics - Anfänger-Themen 1
A Code läuft nicht, Fehlermeldung Exception in thread "main" java.lang.Error: Unresolved compilation " Java Basics - Anfänger-Themen 11
D Integer Fehlermeldung exception Java Basics - Anfänger-Themen 4
A Fehlermeldung beim aufruf der main Methode Java Basics - Anfänger-Themen 17
D Fehlermeldung beim Ausführen eines Java Programms Java Basics - Anfänger-Themen 4
H Kein Zugriff auf das Element einer JList möglich: Fehlermeldung Java Basics - Anfänger-Themen 2
S Vererbung Fehlermeldung: the hierarchy of the type "class name" is inconsistent Java Basics - Anfänger-Themen 10
D Fehlermeldung "com.element.JavaUpload.Manager" Java Basics - Anfänger-Themen 1
S Fehlermeldung bei format methode Java Basics - Anfänger-Themen 1
A Compiler-Fehler Fehlermeldung auf Mac Java Basics - Anfänger-Themen 3
K JDBC - Wie ist Fehlermeldung zu interpretieren Java Basics - Anfänger-Themen 3
O Methoden Fehlermeldung(Illegal start of expression) bei 4-Gewinnt-Spiel Java Basics - Anfänger-Themen 5
N Fehlermeldung nicht nachvollziehbar Java Basics - Anfänger-Themen 5
S Class File Editor gibt beim Start der Programms die Fehlermeldung Source not found aus Java Basics - Anfänger-Themen 1
C Array List mit String vergleichen und Fehlermeldung ausgeben Java Basics - Anfänger-Themen 6
X Einfach verkettete Liste, keine Fehlermeldung Programm friert ein Java Basics - Anfänger-Themen 4
G Variablen Warum bekomme ich da eine Fehlermeldung? Java Basics - Anfänger-Themen 3
C GUI - SWT - Button-Fehlermeldung Java Basics - Anfänger-Themen 5
F Input/Output IOTools Fehlermeldung: cannot be resolved Java Basics - Anfänger-Themen 16
K Erste Schritte Datei gelöscht - nun Fehlermeldung Java Basics - Anfänger-Themen 2
S Fehlermeldung Java Basics - Anfänger-Themen 8
E Fehlermeldung und Fenster wird nicht mehr angezeigt Java Basics - Anfänger-Themen 12
E Fehlermeldung Java Basics - Anfänger-Themen 13
K Transparents Bild laden -> Fehlermeldung Java Basics - Anfänger-Themen 6
J Fehlermeldung reagieren Java Basics - Anfänger-Themen 10
F Array Fehlermeldung... Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben