actionPerformed wird nicht ausgeführt

RegenSonne

Aktives Mitglied
Jo Leute.. ich ahbe probiert einen eigenen Button zu schreiben...
leider funktioniert das actionPerformed nicht..

Main-Klasse:

Java:
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Main extends JLabel{
 private static final long serialVersionUID = 1L;
 public static void main(String[] args) {
  
  JFrame jf = new JFrame();
  jf.setSize(1280, 720);
  jf.setLocationRelativeTo(null);
  jf.setDefaultCloseOperation(3);
  
  
  Draw d = new Draw();
  d.setSize(1280,720);
  d.setVisible(true);
  
  new Playstate();
  
  
  jf.add(d);
  jf.setVisible(true);
 }
 
}

Playstate:
Java:
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.RepaintManager;
public class Playstate implements ActionListener{
 
 
 private static Button Start;
 
 public Playstate() {
  Start = new Button(this,"Start Game", 200, 200, 100, 30);
 }
 public void update() {
  
 }
 
 public static void render(Graphics g) {
  Start.RenderButton(g);
 
 }
 
 public void mousePressed(MouseEvent e) {
 
  Start.mousePressed(e);
 }
 
 public void mouseReleased(MouseEvent e) {
  Start.mouseReleased(e);
 }
 
 @Override
 public void actionPerformed(ActionEvent e) {
  if(e.getSource() == Start) {
   System.out.println("Start");
  }
  
 }
}

Button:

Java:
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
public class Button {
 
 
 private int x,y,width,height, mouseX, mouseY;
 private boolean enabled,pressed;
 private String text;
 private final Font font = new Font("Verdana", Font.PLAIN, 14);
 private ActionListener listener;
 
 
 public Button(ActionListener listener, String text, int x, int y, int width, int height) {
  this.listener = listener;
  this.text = text;
  this.x = x;
  this.y = y;
  this.width = width;
  this.height = height;
  enabled = true;
 } 
 
 public void RenderButton(Graphics g) {
  
  mouseX = Draw.mouseX;
  mouseY = Draw.mouseY;
  if(isPressed(mouseX, mouseY)) {
   g.setColor(Color.red);
  }else {
   g.setColor(Color.red.darker());
  }
  g.fillRoundRect(x, y, width, height, 15, 15);
  g.setColor(Color.BLACK);
  g.drawRoundRect(x, y, width, height, 15, 15);
  int stringWidth = g.getFontMetrics().stringWidth(text);
  g.drawString(text, x + width/2-stringWidth/2, y+height/2);
 }
 
 private boolean isPressed(int x, int y) {
  return x>= this.x && x <= this.x+width && y >= this.y && y <= this.y+height;
  
 }
 
 public void mousePressed(MouseEvent e) {
  if(isPressed(e.getX(), e.getY())) {
  
   pressed = true;
  }
 }
 
 public void mouseReleased(MouseEvent e) {
  if(pressed && enabled) {
   listener.actionPerformed(new ActionEvent(this));
   pressed = false;
  }
 }
 
 public void mouseClick(MouseEvent e) {
  if(pressed && enabled) {
   listener.actionPerformed(new ActionEvent(this));
   pressed = false;
  }
 }
}
Dann habe ich noch ein actionlistener Interface und ein actionevent mit einem getter für source..
Kann mir jmd sagen warum das nicht klappt?

LG
 

JStein52

Top Contributor
da wo du das hast:
Code:
this.listener = listener;
schreibst du:
Code:
this.addActionListener(listener);
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F actionPerformed() zur richtigen Zeit Java Basics - Anfänger-Themen 6
D JLabel ändern in actionperformed Java Basics - Anfänger-Themen 2
D KeyListener nicht mehr aktiv nach ActionPerformed Java Basics - Anfänger-Themen 2
S Wie werte vergleichen, die in actionPerformed-Methode hängen ? Java Basics - Anfänger-Themen 4
M Threads Thread.Sleep Problem im Zusammenhang mit GUI/ActionPerformed-Methode Java Basics - Anfänger-Themen 4
J In actionPerformed Zugriff auf öffentlich Methoden der Klasse Java Basics - Anfänger-Themen 4
Z Kann actionPerformed(ActionEvent) nicht überschreiben Java Basics - Anfänger-Themen 8
J Werte an Methode übergeben und gleichzeitig ActionPerformed einbeziehen. Java Basics - Anfänger-Themen 14
M OOP ActionPerformed Methode aus anderer AP aufrufen? Java Basics - Anfänger-Themen 5
M Variablen via actionPerformed mit Buttons ändern Java Basics - Anfänger-Themen 7
R Wie es anstellen das ActionPerformed einen Wert zurückgibt? Java Basics - Anfänger-Themen 8
S Objekt an actionPerformed Methode übergeben Java Basics - Anfänger-Themen 7
A lokale Variable innerhalb "actionPerformed()" Java Basics - Anfänger-Themen 10
S actionPerformed(ActionEvent ev) Java Basics - Anfänger-Themen 4
Houly while Schleife im ActionPerformed Event Java Basics - Anfänger-Themen 8
R ActionPerformed: Methode ausführen Java Basics - Anfänger-Themen 3
0 Fehlermeldung: SteuerungsPanel$ButtonHandler.actionPerformed(Steu erungsPanel.java: Java Basics - Anfänger-Themen 2
R Thread in ActionPerformed-Methode unbekannt? Java Basics - Anfänger-Themen 4
R Wie getText mit actionPerformed verwenden? Java Basics - Anfänger-Themen 3
C actionPerformed(null) Java Basics - Anfänger-Themen 6
D Auf Buttondruck (actionperformed) painten Java Basics - Anfänger-Themen 5
H Frage zur Methode: actionPerformed Java Basics - Anfänger-Themen 2
A ActionPerformed Methode ohne Rückgabewert Java Basics - Anfänger-Themen 12
I actionPerformed funktioniert nicht Java Basics - Anfänger-Themen 13
DeeDee0815 JRadioButton, actionPerformed und Textfelder Java Basics - Anfänger-Themen 2
B Exception Handling in der ActionPerformed-Methode Java Basics - Anfänger-Themen 7
S Java GUI: Probleme mit EventListener und actionPerformed Java Basics - Anfänger-Themen 3
B actionPerformed und ComboBoxen Java Basics - Anfänger-Themen 7
J JMenu + ActionPerformed + ConntentPane Java Basics - Anfänger-Themen 4
D Fehlersuche actionPerformed Java Basics - Anfänger-Themen 6
S actionPerformed und JCheckBox Java Basics - Anfänger-Themen 4
N ActionListener - ActionPerformed - if soure= .... Java Basics - Anfänger-Themen 6
M Übergeben einer Variable an actionPerformed(ActionEvent e)? Java Basics - Anfänger-Themen 5
U actionPerformed - Source verständlich Java Basics - Anfänger-Themen 8
C Problem mit actionPerformed Java Basics - Anfänger-Themen 4
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
I Exception wird gefangen, aber trotzdem in Error Log? Java Basics - Anfänger-Themen 10
H JDK installieren jdk-21 wird nicht erkannt Java Basics - Anfänger-Themen 13
T if-else Bedingung wird ignoriert Java Basics - Anfänger-Themen 4
K Warum wird mir "Empfangen vom Client:" nicht sofort ausgegeben(Server/Client) Java Basics - Anfänger-Themen 3
P Webseite vom Smartmeter wird nur unleserlich angezeigt Java Basics - Anfänger-Themen 7
A Warum wird mein jdk nicht gefunden? Java Basics - Anfänger-Themen 3
J jar Befehl wird nicht erkannt Java Basics - Anfänger-Themen 7
M Anonyme Klassen - Warum wird in der Konsole nichts ausgegeben? Java Basics - Anfänger-Themen 1
T catch(InputMismatchException) wird nicht ausgefürt/erkannt Java Basics - Anfänger-Themen 12
berserkerdq2 Intelij, wie kann ich einstellen, dass die aktuelle Klasse ausgeführt wird, wenn ich aufs Startsymbol drücke, gibts da eine Tastenkombination? Java Basics - Anfänger-Themen 11
M Verständnisfrage: Warum wird die Datei ohne Inhalt übertragen Java Basics - Anfänger-Themen 3
Ostkreuz Wieso wird die Methode nochmal aufgerufen? Java Basics - Anfänger-Themen 5
Oneixee5 Maven Plugin wird 2 mal ausgeführt Java Basics - Anfänger-Themen 10
R Compiler-Fehler Variable wird nicht gefunden bzw. erkannt? Java Basics - Anfänger-Themen 2
D Interface Methode wird ungewollt in der Subklasse überschrieben Java Basics - Anfänger-Themen 5
C Was tun wenn .class erwartet wird ? Java Basics - Anfänger-Themen 6
T Meine Klasse wird nicht gefunden Java Basics - Anfänger-Themen 1
T Wie kann man es machen das ein Objekt nicht übermalt wird Java Basics - Anfänger-Themen 2
K Warum wird mir hier nach dem ersten Durchlauf zwei mal "welchen Datentyp wollen sie übergeben?" ausgegeben ? Java Basics - Anfänger-Themen 1
MiMa Ungültiges Datum wird nicht erkannt ?? Java Basics - Anfänger-Themen 6
schemil053 Multithread - Input verrutscht während etwas ausgegeben wird Java Basics - Anfänger-Themen 6
K REGEX - Rechnungsbetrag wird nicht richtig ausgelesen. Java Basics - Anfänger-Themen 3
_user_q Timer - ScheduledExecutorService wird schon vorher beendet Java Basics - Anfänger-Themen 5
X Erste Schritte Scanner eingabe wird übersprungen Java Basics - Anfänger-Themen 4
H Compiler-Fehler Klasse in einem Package wird nicht gefunden bzw. akzeptiert Java Basics - Anfänger-Themen 12
L Switch-Case Multiplikation wird nicht ausgegeben Java Basics - Anfänger-Themen 1
J In der Ausgabe wird ohne Eingabe in den else Block gesprungen. Java Basics - Anfänger-Themen 0
J In der Ausgabe wird ohne Eingabe in den else Block gesprungen. Java Basics - Anfänger-Themen 5
M Text wird in der Console nicht ausgegeben. Java Basics - Anfänger-Themen 11
I Methoden Wieso wird mein Array "a" verändert und meine Variable "a" nicht? Java Basics - Anfänger-Themen 4
S Datei anlegen Problem! Groß- und Kleinschreibung wird nicht unterschieden Java Basics - Anfänger-Themen 4
sserio Zweidimensionales Array [][] wird untereinander ausgegeben Java Basics - Anfänger-Themen 14
sserio Math. Befehl wird rot markiert Java Basics - Anfänger-Themen 5
M Rechteck wird nicht angezeigt Java Basics - Anfänger-Themen 3
B Bungeecord | ProxiedPlayer wird nicht in ArrayList hinzugefügt Java Basics - Anfänger-Themen 1
U Methode wird genutzt, ohne dass ich die aufrufe? Java Basics - Anfänger-Themen 4
S Methoden Return Rückgabewert wird nicht übergeben Java Basics - Anfänger-Themen 8
M Mein quellcode wird nicht in der Konsole ausgegeben Java Basics - Anfänger-Themen 3
I Code wird nicht ausgeführt Java Basics - Anfänger-Themen 2
M wird der Konstruktor nicht als 1. ausgeführt? Java Basics - Anfänger-Themen 13
G Main Methode wird beim ersten Aufruf nicht richtig ausgeführt Java Basics - Anfänger-Themen 1
K Präzedenregeln in Java sagen, dass +expr und -expr vor + von Addition und - von Addition stehen, warum wird dann z. B. a+b als eine Addition ausgeführ Java Basics - Anfänger-Themen 7
M Was wird hier genau getestet? Java Basics - Anfänger-Themen 9
M Wie schreibe ich eine if-Verzweigung um, so dass ein Bedingungsoperator benutzt wird? Java Basics - Anfänger-Themen 9
I Programm erkennt nicht an das Array zurückgegeben wird trotz Initialisierung *einfach* Java Basics - Anfänger-Themen 9
K Jlabel mit itemlistevent Text gegeben, wird nicht angezeigt Java Basics - Anfänger-Themen 5
P Mein Programm wird zwar erfolgreich Compiliert, öffnet sich aber nicht Java Basics - Anfänger-Themen 6
M Referenzen zuweisen und wird gleichzeitig ausgeführt Java Basics - Anfänger-Themen 6
O System.out.println wird nicht ausgegeben? Java Basics - Anfänger-Themen 11
Zrebna Umgebungsvariable Wieso wird meine verwendete JDK-Version in der Prompt nicht erkannt? Java Basics - Anfänger-Themen 6
el_pato DialogFenster wird nicht in Schleife geöffnet? Java Basics - Anfänger-Themen 30
J if-Schleife innerhalb einer if-Schleife wird in der Konsole nicht gelesen Java Basics - Anfänger-Themen 4
P Apache Derby wird in Eclipse trotz Anbindung nicht gefunden Java Basics - Anfänger-Themen 6
H Array wird als Rückgabewert nicht akzeptiert? Java Basics - Anfänger-Themen 2
Poppigescorn scan.nextInt() wiederholen bis eine Zahl eingeben wird Java Basics - Anfänger-Themen 7
F Session wird mehrfach erzeugt Java Basics - Anfänger-Themen 11
F Initialisieren eines Web-Mp3 Players in Tabs durch "booleans" erst wenn Tab geöffnet wird ...? Java Basics - Anfänger-Themen 1
fuerteb Compiler-Fehler Methode wird nicht bzw. als Fehler erkannt Java Basics - Anfänger-Themen 4
L JScrollPane wird nicht angezeigt Java Basics - Anfänger-Themen 10
D Hilfe beim Erzeugen eines Arrays NullPointerException wird ausgelöst Java Basics - Anfänger-Themen 11
J JTable Titel wird nicht angezeigt Java Basics - Anfänger-Themen 6
krgewb Long wird gerundet Java Basics - Anfänger-Themen 2
Zwanglos Warum wird nur die erste Zeile im while Block ausgeführt? Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben