MouseListener funktioniert nach Timerstart nicht mehr

Der_Falke_

Mitglied
Hallo liebe Community,

ich habe in meinem Programm einen Timer und einen MouseListener eingebaut. Der MouseListener wird beim starten des Programms direkt dem Frame hinzugefügt. Ich habe einfach mal eine Testnachricht eingebaut die immer wenn man klickt den Wert der Variablen i aus der Klasse "Vorgeschichte" ausgibt. Standard gemäß ist i auf 0 gesetzt. Wenn man nun in irgend einem anderen Bild klickt wird auch "0" in der Console ausgegeben. Nachdem der Timer gestartet ist habe ich i dann auf 1 gesetzt, doch der MouseListener reagiert nicht mehr. Wenn ich in den Frame klicke kommt keine Nachricht in der Console. Woran liegt der Fehler?

Danke schon mal im Vorraus.

Main:
[Java]
public static void main(String[] args) throws IOException {
Main frame = new Main("MineJump");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(1400,800);
frame.setResizable(false);
frame.setLocationRelativeTo(null);
Menus.hauptmenu(frame);

Image icon = new ImageIcon(Main.class.getResource("/Images/icon.png")).getImage();
frame.setIconImage(icon);
frame.setVisible(true);

frame.addMouseListener(new MouseListener() {
@Override
public void mouseReleased(MouseEvent e) {}

@Override
public void mousePressed(MouseEvent e) {}

@Override
public void mouseExited(MouseEvent e) {}

@Override
public void mouseEntered(MouseEvent e) {}

@Override
public void mouseClicked(MouseEvent e) {
if(Vorgeschichte.i == 0) {
System.out.println("0");
} else {
System.out.println("1");
}
}
});
}
[/Java]

Vorgeschichte:
[Java]
public static void vorgeschichte1(JFrame frame) {
JPanel panelVG = new JPanel();

panelVG.setLayout(null);
panelVG.setBounds(0, 0, 1400, 800);

panelVG.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseMoved(MouseEvent e) {
Vorgeschichte.mX = e.getX();
Vorgeschichte.mY = e.getY();
}
});

JLabel background1 = new JLabel(new ImageIcon(Main.class.getResource("/Images/backgroundVG1.png")));
background1.setBounds(0, 0, 1400, 800);
JLabel text1 = new JLabel(new ImageIcon(Main.class.getResource("/Images/textVG1.png")));
text1.setBounds(50, position, 1000, 200);
JLabel hinweisKlicken = new JLabel(new ImageIcon(Main.class.getResource("/Images/hinweisKlicken.png")));

t = new Timer(50, new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(position > 550) {
text1.setBounds(50, position, 1000, 200);
panelVG.add(text1);
panelVG.add(background1);
frame.add(panelVG);
position = position-1;

i = 1;
} else {
tKlicken = new Timer(1, new ActionListener() {
public void actionPerformed(ActionEvent e) {
text1.setBounds(50, 550, 1000, 200);
panelVG.add(text1);
hinweisKlicken.setBounds(mX+20, mY+20, 200, 80);
panelVG.add(hinweisKlicken);
panelVG.add(background1);
frame.add(panelVG);
}
});
panelVG.add(text1);
panelVG.add(hinweisKlicken);
panelVG.add(background1);
frame.add(panelVG);
tKlicken.setInitialDelay(0);
tKlicken.setRepeats(true);
tKlicken.start();
}
}
});
panelVG.add(text1);
panelVG.add(background1);
frame.add(panelVG);
t.setInitialDelay(0);
t.setRepeats(true);
t.start();
}
[/Java]

MfG
Der_Falke_
 

Java20134

Bekanntes Mitglied
Schreibe mal in die mouseClicked Methode direkt eine Textausgabe ohne vorher etwas abzufragen. Wenn das dann funktioniert weißt du, dass der Listener funktioniert.

Wo hast du die Variable i definiert? Und warum setzt du dem JPanel einen MouseListener? Du hast dem JFrame schon einen gegeben, da brauchst du nicht noch einen.
 
Zuletzt bearbeitet:

Der_Falke_

Mitglied
public static int i = 0;
in der Klasse Vorgeschichte ganz oben.

Dem Panel hatte ich den MouseListener schon früher hinzugefügt als ich eine andere Funktion geschrieben habe. Danach habe ich halt einige Tests gemacht wesshalb irgendwann dann der Frame noch einen MouseListener bekommen hat.

Und der MouseListener funktioniert wirklich nicht, auch wenn ich die Abfrage rausnehme.
 

Harry Kane

Top Contributor
So auf Anhieb sehe ich keinen offensichtlichen Grund, warum ein Timer den MouseListener blocken sollte.
Wenn keine MouseEvent beim JFrame mehr ankommen, werden die Events ev. durch eine Component auf dem JFrame "abgefangen". Ob das der Fall ist oder sein kann, ist aus deinen Codeschnipseln nicht ersichtlich.
Mit ist aufgefallen, daß du in der actionPerfomed von deinem Timer t jedesmal die JLabels text1 und background dem panelVG addest und das panelVG dem JFrame. Warum das?
 

Der_Falke_

Mitglied
Auf diese Methode bin ich nach langen probieren und immer wieder Sachen an andere Stellen schieben gekommen.
Da der Text immer einen Pixel höher geschoben wird muss ich auch Hintergrund und andere Komponenten neu adden, da der Komponent der als letztes geaddet wird immer im Hintergrund angezeigt wird, dadurch muss ich also die hintersten Ebenen immer wieder neu adden sobald ich die vorderen Ebenen neu setze.
 

fLooojava

Bekanntes Mitglied
Ein kurzes selbstständiges kompilierbares Beispiel ist gemeint - aber solche Abkürzungen sind schon .... frech^^

cheers,
flo
 

Der_Falke_

Mitglied
Okay...
Ich denke mal das das relativ schwierig, bzw. doof zum umsetzen da man nicht viel weglassen kann. Ich denke mal man braucht den Hintergrund und das Label das sich bewegt... Ich werde mich morgen mal ran setzen, heute habe ich leider keine Zeit mehr ^^" Ich poste morgen mein Ergebnis!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
R Variablen MouseListener funktioniert auf anderen Pcs nur bedingt Java Basics - Anfänger-Themen 6
G MouseListener funktioniert nicht wie geplant Java Basics - Anfänger-Themen 4
P MouseListener funktioniert nicht Java Basics - Anfänger-Themen 6
M MouseListener funktioniert nicht Java Basics - Anfänger-Themen 9
M MouseListener funktioniert in jar-file nicht mehr Java Basics - Anfänger-Themen 13
P JFrame, Linien zeichnen, MouseListener Java Basics - Anfänger-Themen 2
H MouseListener klicks begrenzen Java Basics - Anfänger-Themen 4
H MouseListener begrenzen und Speichern Java Basics - Anfänger-Themen 1
V Problem - MouseListener/2DGraphics Java Basics - Anfänger-Themen 2
GRAZZ0R MouseListener - Rechteck Bewegen Java Basics - Anfänger-Themen 1
R Variable Klassenübegreifend MouseListener Java Basics - Anfänger-Themen 0
J MouseListener für Schleifen-Objekte Java Basics - Anfänger-Themen 13
S vom JPanel aus durch Mouselistener Internet aufrufen Java Basics - Anfänger-Themen 6
S GUI ImageIcon Mouselistener Link Java Basics - Anfänger-Themen 0
J KeyListener,MouseListener,MouseMotionListener und static Java Basics - Anfänger-Themen 7
P Problem mit MouseListener Java Basics - Anfänger-Themen 4
T MouseListener, recht Taste Java Basics - Anfänger-Themen 2
E Mouselistener auf jTable Java Basics - Anfänger-Themen 18
B Variablen an MouseListener übergeben Java Basics - Anfänger-Themen 5
H MouseListener für ein eingefügtes Bild in einem JFrame Java Basics - Anfänger-Themen 7
H Mouselistener bei JTable Java Basics - Anfänger-Themen 4
G MouseListener für mehrere Buttons Java Basics - Anfänger-Themen 11
J MouseListener fuer gezeichnete Polyline Java Basics - Anfänger-Themen 3
L Label + MouseListener Java Basics - Anfänger-Themen 12
M MouseListener funkioniert auf JPanel nicht Java Basics - Anfänger-Themen 8
P Jtree MouseListener und NoCollapse Java Basics - Anfänger-Themen 2
M Schiebepuzzle: MouseListener und Graphics? Java Basics - Anfänger-Themen 6
M MouseListener Java Basics - Anfänger-Themen 2
kitz MouseListener Java Basics - Anfänger-Themen 8
B MouseListener & Graphics Java Basics - Anfänger-Themen 10
D Problem mit Mouselistener und jtable Java Basics - Anfänger-Themen 7
C fragen zu MouseListener Java Basics - Anfänger-Themen 3
F Logikproblem: Auf Mouselistener warten Java Basics - Anfänger-Themen 6
E Auf Mouselistener warten?! Java Basics - Anfänger-Themen 20
S Probleme mit 2 mouselistener Java Basics - Anfänger-Themen 6
A Frage zu MouseListener Java Basics - Anfänger-Themen 2
D Mouselistener Java Basics - Anfänger-Themen 2
A jPanel an MouseListener übergeben? Java Basics - Anfänger-Themen 2
S Swing JEditoPane MouseListener Java Basics - Anfänger-Themen 5
M Mouselistener Java Basics - Anfänger-Themen 4
S MouseListener funzt net. Java Basics - Anfänger-Themen 5
G MouseListener double click? Java Basics - Anfänger-Themen 1
V MouseListener Java Basics - Anfänger-Themen 5
M MouseListener Java Basics - Anfänger-Themen 3
N Mouselistener? Java Basics - Anfänger-Themen 5
T ein MouseListener pro Objekt sinnvoll? Java Basics - Anfänger-Themen 4
F MouseListener - Unhandled IOException Java Basics - Anfänger-Themen 2
U MouseListener Java Basics - Anfänger-Themen 2
L Array von Buttons, jeder soll MouseListener haben Java Basics - Anfänger-Themen 5
S MouseListener - Events auf Mouseklick Java Basics - Anfänger-Themen 14
L MouseListener Problem. Java Basics - Anfänger-Themen 2
S mouselistener Java Basics - Anfänger-Themen 3
N MouseListener Java Basics - Anfänger-Themen 2
J MouseListener implementieren Java Basics - Anfänger-Themen 12
P MouseListener wird anscheinend nicht benutzt Java Basics - Anfänger-Themen 12
N MouseListener - reagiert zu spät Java Basics - Anfänger-Themen 3
D JList - Textzeilen MouseListener zuweisen Java Basics - Anfänger-Themen 4
M prüfen ob mouselistener gesetzt ist. Java Basics - Anfänger-Themen 10
O image und mouseListener Java Basics - Anfänger-Themen 15
W MouseListener Probleme beim Abfangen Java Basics - Anfänger-Themen 8
P Kann keinen MouseListener hinzufügen Java Basics - Anfänger-Themen 3
G MouseListener einbauen - wie? Java Basics - Anfänger-Themen 4
J Datenüberwachung funktioniert nicht Java Basics - Anfänger-Themen 9
mo13 JTextField funktioniert nicht Java Basics - Anfänger-Themen 4
J .jar datei öffnen funktioniert nicht Java Basics - Anfänger-Themen 17
G Mit jPackage erstellte EXE funktioniert nicht Java Basics - Anfänger-Themen 2
G Robot funktioniert nicht bei SelectionListener Java Basics - Anfänger-Themen 6
R RegEx funktioniert nicht Java Basics - Anfänger-Themen 14
S 2 Reihen ratio-btn, eine Reihe funktioniert andere nicht Java Basics - Anfänger-Themen 4
monsterherz Punkt Notation funktioniert nicht Java Basics - Anfänger-Themen 4
N Programm Funktioniert mit .txt Datei aber nicht mit .rtf Datei Java Basics - Anfänger-Themen 2
D Quellcode für cmd funktioniert nicht Java Basics - Anfänger-Themen 9
ms_cikar Bin to Float convertieren funktioniert nicht Java Basics - Anfänger-Themen 24
B Schrankensystem mit Farberkennung für Flashgame funktioniert nicht wie geplant Java Basics - Anfänger-Themen 4
I Greenscreen, funktioniert nicht zu 100%... nicht alle Pixel werden geändert Java Basics - Anfänger-Themen 1
JordenJost char variable funktioniert irgendwie nicht a+b ergibt nicht à Java Basics - Anfänger-Themen 4
M Operatoren Strings mit Vergleichsoperatoren, funktioniert das? Java Basics - Anfänger-Themen 9
Garrit1994 Continue funktioniert nicht wie geplant Java Basics - Anfänger-Themen 4
B Methoden Übergebe Variabel funktioniert nicht Java Basics - Anfänger-Themen 17
P exportiertes Programm funktioniert nur teilweise Java Basics - Anfänger-Themen 7
Agent4nobody Programmstart durch aufruf des interpreters funktioniert nicht Java Basics - Anfänger-Themen 14
Fugover Programm funktioniert nicht Java Basics - Anfänger-Themen 11
X Datentypen String.equals funktioniert nicht Java Basics - Anfänger-Themen 5
berserkerdq2 wie funktioniert contenthandler, was muss ich bei der Methode startElement und endElement tun? Java Basics - Anfänger-Themen 11
Alen123 Warum funktioniert mein Code nicht? Java Basics - Anfänger-Themen 64
sserio Array funktioniert nicht Java Basics - Anfänger-Themen 2
sserio Wieso funktioniert mein Programm nicht Java Basics - Anfänger-Themen 2
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
sserio Größtes Palindrom-Produkt Programm funktioniert nur halb Java Basics - Anfänger-Themen 23
sserio Rekursion größten Primfaktor finden funktioniert nicht Java Basics - Anfänger-Themen 8
sserio Wieso funktioniert mein TableView nicht /JavaFX. Java Basics - Anfänger-Themen 4
Avalon Warum funktioniert eine Bedingung und eine andere nicht? Java Basics - Anfänger-Themen 2
J Datentypen String in File konvertieren funktioniert nicht Java Basics - Anfänger-Themen 4
U Wie genau funktioniert der ! Operator Java Basics - Anfänger-Themen 3
stormyark 4 Bit in einer for-schleife funktioniert nicht Java Basics - Anfänger-Themen 3
J Nach dem Exportieren funktioniert mein Programm nicht mehr Java Basics - Anfänger-Themen 8
M Java printf(Locale.... funktioniert nicht Java Basics - Anfänger-Themen 3
N Wieso funktioniert die Deklaration nicht Java Basics - Anfänger-Themen 3
C Long value an Stringbuilder übergeben, equals Methode funktioniert nicht Java Basics - Anfänger-Themen 2
districon Backtracking funktioniert nicht ganz Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben