MouseListener funktioniert nicht

programmierer12

Bekanntes Mitglied
Hi ich habe mal wieder mit meinem Programm ein Problem
bei mir funktionier der MouseListener nicht aus welchem Grund auch immer.
Ich habe jetzt den Funktionierenden Code ohne MouseListener für euch:
Java:
import java.awt.EventQueue;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import java.io.IOException;

import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;

import awt.ImageLoader;

public class Main implements Runnable{
	
	public static File file;
	
	public static JScrollPane pane;
	public static JLabel hilfeText;
	public static JFrame f;
	public static JButton btnOpen;
	public static JButton btnStart;
	public static JButton btnHelp;
	public static JButton btnEnd;
	public static JButton btnHilfeEnd;
	
	@SuppressWarnings("serial")
	public static JPanel panel = new JPanel(){
		
		public void paintComponent(Graphics g) {
			
            g.drawImage(ImageLoader.LoadImage("Hintergrund01.png"), 0, 0, null);
      
		}
		
	};
	
	public static void main(String[] args) throws IOException {
		
		EventQueue.invokeLater(new Runnable() {
			
			@Override
			public void run() {
				
				f = new JFrame("AB Cleaner");
				f.setContentPane(panel);
				f.setSize(340, 260);
				f.setLocationRelativeTo(null);
				f.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
				f.setUndecorated(false);
				f.setLayout(null);
				f.setResizable(false);
				f.setVisible(true);
				
				f.addWindowListener(new WindowAdapter() {			
					
					public void windowClosing(WindowEvent e){
						
						if (JOptionPane.showConfirmDialog(null, "Möchten Sie das Programm beenden"," Programm beenden ", JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
							
							System.exit(0);
							
						}
						
						else{
							f.repaint();
						}
					
					}
					
				});
				
				JMenuBar mb = new JMenuBar();
				f.setJMenuBar(mb);
				
				JMenu start = new JMenu("Start");
				mb.add(start);
				
				JMenu hilfe = new JMenu("Hilfe");
				mb.add(hilfe);
				
				JMenuItem open = new JMenuItem("Öffnen");
				start.add(open);
				
				final JMenuItem beginn = new JMenuItem("Starten");
				start.add(beginn);
				
				JMenuItem close = new JMenuItem("Beenden");
				start.add(close);
				
				JMenuItem help = new JMenuItem("Hilfe");
				hilfe.add(help);
				
				JMenuItem infos = new JMenuItem("Informationen über AB Cleaner");
				hilfe.add(infos);
				
				hilfeText = new JLabel();
				hilfeText.setBounds(12, 13, 298, 123);
				hilfeText.setVisible(false);
				panel.add(hilfeText);
				
				btnOpen = new JButton("Öffnen");
				btnOpen.setBounds(12, 13, 117, 41);
				btnOpen.setVisible(true);
				panel.add(btnOpen);
				
				btnStart = new JButton("Start");
				btnStart.setBounds(12, 67, 117, 41);
				btnStart.setVisible(true);
				panel.add(btnStart);
				
				btnEnd = new JButton("Beenden");
				btnEnd.setBounds(193, 135, 117, 41);
				btnEnd.setVisible(true);
				panel.add(btnEnd);
				
				btnHelp = new JButton("Hilfe");
				btnHelp.setBounds(193, 81, 117, 41);
				btnHelp.setVisible(true);
				panel.add(btnHelp);
				
				btnHilfeEnd = new JButton("Zurück");
				btnHilfeEnd.setBounds(205, 155, 117, 41);
				btnHilfeEnd.setVisible(false);
				panel.add(btnHilfeEnd);
				
				JLabel klappe = new JLabel();
				klappe.setBounds(0, 0, 129, 189);
				klappe.setVisible(false);
				panel.add(klappe);
				
				f.repaint();
				panel.repaint();
				
				open.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent e) {

						AUSWAHL();
						
					}
				
				});
				
				beginn.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent e) {

						try {
							
							@SuppressWarnings("unused")
							RET ret = new RET(file, "C:\\Users\\User\\Desktop\\BearbeitetesBild.png");
							
						} catch (Exception e2) {

							JOptionPane.showMessageDialog(null, "Wählen Sie erst die zu bearbeitende Datei aus!");
							
						}
						
					}
				});
				
				close.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent e) {

							if (JOptionPane.showConfirmDialog(null, "Möchten Sie das Programm beenden"," Programm beenden ", JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
							
							System.exit(0);
							
						}
							
							else {
								
								f.repaint();
								panel.repaint();
								
							}
						
					}
				});
				
				help.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent arg0) {
						
						HILFE();
						
					}
				});
				
				btnOpen.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent e) {

						AUSWAHL();
						
					}
				});
				
				btnStart.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent e) {

						try {
							
							@SuppressWarnings("unused")
							RET ret = new RET(file, "C:" + File.separator + "Users" + File.separator + "User" + File.separator + "Desktop" + File.separator + "BearbeitetesBild.png");
							
						} catch (Exception e2) {

							JOptionPane.showMessageDialog(null, "Wählen Sie erst die zu bearbeitende Datei aus!");
							
						}
						
					}
				});
				
				btnEnd.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent e) {

						if (JOptionPane.showConfirmDialog(null, "Möchten Sie das Programm beenden"," Programm beenden ", JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
							
							System.exit(0);
							
						}
						
						else{
							
							f.repaint();
							panel.repaint();
							
						}
						
					}
				});
				
				btnHelp.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent e) {

						HILFE();
						
					}
				});
				
				btnHilfeEnd.addActionListener(new ActionListener() {
					
					@Override
					public void actionPerformed(ActionEvent e) {

						pane.setVisible(false);
						btnHilfeEnd.setVisible(false);
						btnOpen.setVisible(true);
						btnStart.setVisible(true);
						btnHelp.setVisible(true);
						btnEnd.setVisible(true);
						
					}
				});
				
			}
		});
		
		
	}
	
	public static void HILFE(){
		
		pane = new JScrollPane(hilfeText, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
		pane.setBounds(0, 0, 335, 149);
		pane.setVisible(true);
		f.add(pane);
		btnHilfeEnd.setVisible(true);
		hilfeText.setText("<html>Die Benutzung des AB-Cleaner's <br> ist eigentlich ganz einfach! <br><br> Schritt 1: <br>gehen Sie in das Menü Start und wählen Sie dort den <br> Menüpunkt Öffnen. Es wird sich ein Auswahldialog <br> öffnen in dem Sie die zu bearbeitende Datei auswählen <br> und mit einem Klick auf Öffnen bestätigen.<br><br><br>Schritt 2: <br><br>Nachdem der Auswahldialog geschlossen wurde <br> ist die zu bearbeitende Datei ausgewählt. <br> Nun gehen Sie erneut in das Menü Start und wählen <br> dieses Mal den Menüpunkt Start aus. <br> Das bearbeitete Bild sollte nach kurzer Wartezeit <br> auf dem Desktop zu sehen sein.<br><br><br>Schritt 3:<br><br>Falls Sie ein weiteres Bild bearbeiten möchten,<br> wiederholen Sie die Schritte 1 und 2.<br><br><br> ACHTUNG:<br> Falls Sie ein zweites mal auf Start klicken, <br> ohne ein anderes Bild auszuwählen, wird <br> das Gleiche Bild wie zuvor bearbeitet und <br> überschreibt das alte bearbeitete Bild. <br> Auch wenn Sie ein neues Bild gewählt haben <br> ist Vorsicht geboten, da das Programm eine <br> vorhandene Datei namens <br> BearbeitetesBild.png (falls vorhanden) überschreibt.<br><br>Die zugeordneten Tasten auf der Programmoberfläche <br> können natürlich auch zur Benutzung genutzt werden<br><br><br></html>");
		hilfeText.setVisible(true);
		btnOpen.setVisible(false);
		btnStart.setVisible(false);
		btnHelp.setVisible(false);
		btnEnd.setVisible(false);
		f.repaint();
		panel.repaint();
		
	}
	
	public static void AUSWAHL(){
		
		JFileChooser fc = new JFileChooser();
		int state = fc.showOpenDialog(null);
		if (state == JFileChooser.APPROVE_OPTION) {
			
			file = fc.getSelectedFile();
			
		}
		
		else {
			
			
			
		}
		
	}

	
	@Override
	public void run() {

		while (f.isVisible()) {
			
			f.repaint();
			panel.repaint();
			
		}
		
	}
	
}
Ich möchte gerne überprüfen ob ich in einem bestimmten Bereich des Frames klicke.
Wie mache ich das?????
Ich kann ihn zwar implementieren aber es schaut für mich so aus als ob er
die Klicks gar nicht erkennt!

MFG
programmierer12
 

programmierer12

Bekanntes Mitglied
Ja das weiß ich ich hab das ganze mit meinem panel auf das ich alles zeichne
und hinzufüge, und mit dem JFrame probiert aber geschafft habe ich das ganze nicht!
BITTE HELFT MIR!

MFG
programmierer12
 

eMmiE

Bekanntes Mitglied
Probier mal, den MouseListener dem JFrame zuzuordnen.

Ob er funktioniert kannst du ja einfach per sysout überprüfen

Gruß eMmiE
 

njans

Top Contributor
Du hängst den MouseListener einfach an den ContentPain des JFrames oder direkt an den JFrame. Wenn eine Komponente die Events die sie bekommt (click z.B.) nicht verarbeitet, werden die an die Parent-Komponente weitergeleitet.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G MouseListener funktioniert nicht wie geplant Java Basics - Anfänger-Themen 4
D MouseListener funktioniert nach Timerstart nicht mehr Java Basics - Anfänger-Themen 9
M MouseListener funktioniert nicht Java Basics - Anfänger-Themen 9
M MouseListener funktioniert in jar-file nicht mehr Java Basics - Anfänger-Themen 13
R Variablen MouseListener funktioniert auf anderen Pcs nur bedingt Java Basics - Anfänger-Themen 6
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
I Webservice funktioniert nicht Java Basics - Anfänger-Themen 5
C Abbruch einer Schleife mit break, meine Übung funktioniert nicht richtig Java Basics - Anfänger-Themen 4
S Erstes Programm: Hallo Welt funktioniert nicht. Java Basics - Anfänger-Themen 3
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

Ähnliche Java Themen

Neue Themen


Oben