MouseEvent von Kindelementen abfangen

Status
Nicht offen für weitere Antworten.

Edo

Neues Mitglied
Hallo,
ich habe ein Problem mit der Ereignisbehandlung von Komponenten auf einem JPanel.

Ich habe ein JPanel, auf dem diverse Komponenten (JButton, JLabel etc.) angeordnet sind. Mein Ziel ist, einen Rechtsklick auf dem Panel abzufangen, was ich auch gemacht habe. Der Rechtsklick soll im gesamten Panelbereich abgefangen werden, auch wenn er sich auf einem Button o.ä. ereignet.

Unten ist ein Quelltextausschnitt des Konstruktors; die Klasse RechtsklickListener erbt von MouseAdapter.

Code:
public MeinPanel (MeinMenue menue)
	{				
               //den MouseListener an das Panel binden
		RechtsklickListener rListener=menue.getRechtsklickListener();
		this.addMouseListener(rListener);
		
               //Label hinzufügen
		kostenLabel = new JLabel();
		this.add(kostenLabel);
		
	       //Button hinzufügen
		okButton=new JButton("OK");
		okButton.addActionListener(okListener);
		this.add(okButton);
	}

An sich funktioniert das Programm auch, nur habe ich folgendes Problem. Wenn der Rechtsklick zufällig auf dem Button (oder einer anderen Komponente) erfolgt, merkt das Panel nichts davon. Jetzt könnte ich natürlich den RechtsklickListener jeder Komponente zuweisen, was aber meiner Meinung nach recht unelegant ist.

Gibt es eine Möglichkeit, daß auch MeinPanel von einem Rechtsklick auf den Button benachrichtigt wird?

Gruß
Edo
 

Edo

Neues Mitglied
Hi,
danke für die schnelle Hilfe. Mit dem AWTEventListener hat es funktioniert. Mit der GlassPane hätte es wahrscheinlich auch geklappt, aber das hätte den Nachteil gehabt, daß, wie in der verlinkten Demo, die Buttons nicht mehr auf gewöhnliche Klicks reagiert hätten. Der Überbau, um entsprechende Klicks abzufangen und dann an die Buttons weiterzuleiten, wäre mir doch zu viel gewesen.
Aber mit den AWTEventListener war es dann einfach.

Gruß
Edo
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
padde479 MenuItem MouseEvent/-Listener AWT, Swing, JavaFX & SWT 5
MouseEvent richtig initialisieren AWT, Swing, JavaFX & SWT 1
S JavaFX Fehler zwischen View und Controller bei MouseEvent (MVC) AWT, Swing, JavaFX & SWT 13
C MouseEvent JavaFX AWT, Swing, JavaFX & SWT 4
L MouseEvent-Konflikt AWT, Swing, JavaFX & SWT 1
S JavaFX Unterschied MouseEvent und ActionEvent AWT, Swing, JavaFX & SWT 3
A Mouseevent Vorrang AWT, Swing, JavaFX & SWT 10
X Swing MouseEvent auslösen AWT, Swing, JavaFX & SWT 3
C MouseEvent AWT, Swing, JavaFX & SWT 8
R MouseEvent.getX() liefert in Applet Screen-Koordinate AWT, Swing, JavaFX & SWT 2
T JLabel adden bei einem MouseEvent AWT, Swing, JavaFX & SWT 2
F AWT MouseEvent - consume() funktioniert nicht AWT, Swing, JavaFX & SWT 6
S JButton + MouseEvent AWT, Swing, JavaFX & SWT 2
J Swing JButton und MouseEvent AWT, Swing, JavaFX & SWT 2
C Swing Problem mit MouseEvent in JTable AWT, Swing, JavaFX & SWT 5
L "Fremdes" JPanel von MouseEvent aus Ändern AWT, Swing, JavaFX & SWT 2
F MouseEvent bei PopupMenu abfangen AWT, Swing, JavaFX & SWT 2
B Button identifizieren unter MouseEvent AWT, Swing, JavaFX & SWT 7
I AWT paint() in MouseEvent aufrufen klappt nicht AWT, Swing, JavaFX & SWT 8
B mouseReleased(MouseEvent m) überflüssig? AWT, Swing, JavaFX & SWT 2
S Zugriff auf statische Var in MouseEvent -> Warnung AWT, Swing, JavaFX & SWT 6
A Problem mit Jframe und mouseevent AWT, Swing, JavaFX & SWT 10
B kein MouseEvent bei zu schneller Bewegung der Maus AWT, Swing, JavaFX & SWT 7
R JButton in JList - MouseEvent-Problem AWT, Swing, JavaFX & SWT 12
A MouseEvent auf Container bzw. Frame weiterleiten AWT, Swing, JavaFX & SWT 5
M mouseEvent an darunterliegende Komponenten weiterleiten AWT, Swing, JavaFX & SWT 2
M MouseEvent JButton Taschenrechner AWT, Swing, JavaFX & SWT 5
X MouseEvent selber auslösen AWT, Swing, JavaFX & SWT 12
H mouseEvent AWT, Swing, JavaFX & SWT 6
G jList + mouseevent (rechtsklick) AWT, Swing, JavaFX & SWT 1
G MouseEvent beenden AWT, Swing, JavaFX & SWT 17
G MouseEvent Problem mit JFrame über einen modalen JDialog AWT, Swing, JavaFX & SWT 3
G JTree MouseEvent AWT, Swing, JavaFX & SWT 6
M MouseEvent in der EventQueue vor versetzen AWT, Swing, JavaFX & SWT 4
sliwalker MouseEvent,JKomponente aus Array: Wie bekommt man den Index AWT, Swing, JavaFX & SWT 2
H MouseEvent bei Drag & Drop (mittels TransferHandler) AWT, Swing, JavaFX & SWT 3
T ScrollEvent richtig(er) abfangen? AWT, Swing, JavaFX & SWT 0
A JOptionPane OK ohne Eingabe abfangen AWT, Swing, JavaFX & SWT 10
Neumi5694 Swing JList - Klick abfangen AWT, Swing, JavaFX & SWT 3
D Swing Events vom JLayer abfangen AWT, Swing, JavaFX & SWT 2
E Outlook Email Senden-Button abfangen AWT, Swing, JavaFX & SWT 5
C Programm für 5 sekunden anhalten und actionevent abfangen AWT, Swing, JavaFX & SWT 18
T Swing JTextPane Tastatureingabe abfangen AWT, Swing, JavaFX & SWT 4
M JFileChooser Abfangen des DateiTypen möglich?? AWT, Swing, JavaFX & SWT 5
S Swing JTable - Editierung von Zellen abfangen AWT, Swing, JavaFX & SWT 3
P Action Event abfangen etwas anders? AWT, Swing, JavaFX & SWT 2
M JOptionPane.showInputDialog abbrechen abfangen? AWT, Swing, JavaFX & SWT 2
P Swing Tastaturereignisse auf gesamten Frame Abfangen AWT, Swing, JavaFX & SWT 13
sylo STRG + TAB KeyEvent abfangen AWT, Swing, JavaFX & SWT 6
M JTextField Tastendruck Abfangen AWT, Swing, JavaFX & SWT 3
H warum kann ich das focus event nicht abfangen ? AWT, Swing, JavaFX & SWT 5
C JTable: Alle selektierten Zellen abfangen AWT, Swing, JavaFX & SWT 13
J JPanel.addKeyListener() - JEDEN Tastendruck im Panel abfangen AWT, Swing, JavaFX & SWT 2
J AWT Abfangen der Rohdaten die PrinterJob zum Drucker sendet AWT, Swing, JavaFX & SWT 2
P Leere Textfelder abfangen AWT, Swing, JavaFX & SWT 4
K Tastatureingaben abfangen AWT, Swing, JavaFX & SWT 25
H Ich kann MouseDragged nicht abfangen AWT, Swing, JavaFX & SWT 3
G Swing Fortschrittsbalken im Fenster: Menü deaktivieren / abfangen? AWT, Swing, JavaFX & SWT 27
pinerski Swing JList Tastatureingaben abfangen AWT, Swing, JavaFX & SWT 2
M Doppelklick auf Component abfangen AWT, Swing, JavaFX & SWT 5
E Swing Wechsel in JCheckBox abfangen AWT, Swing, JavaFX & SWT 10
R ALt+CTRL down, wie abfangen? AWT, Swing, JavaFX & SWT 2
R Checkboxen - Event mit Controller abfangen AWT, Swing, JavaFX & SWT 7
K Alle Events abfangen mit GlassPane AWT, Swing, JavaFX & SWT 7
R Texteingabe abfangen AWT, Swing, JavaFX & SWT 5
P SWT: KeyEvents abfangen, wenn Programm minimiert ist? AWT, Swing, JavaFX & SWT 5
K JTable und auf den Tabellenkopf-Click-Event abfangen AWT, Swing, JavaFX & SWT 2
M Globale Events in Windows abfangen AWT, Swing, JavaFX & SWT 2
S Events abfangen, nicht durchlassen AWT, Swing, JavaFX & SWT 2
G Zwischenablage abfangen AWT, Swing, JavaFX & SWT 4
M JTable alte Daten vor Änderung abfangen AWT, Swing, JavaFX & SWT 11
D Wie Taste "ENTER" bei PlainDocument abfangen? AWT, Swing, JavaFX & SWT 2
P SWT Fenster schließen abfangen AWT, Swing, JavaFX & SWT 4
S Minimieren abfangen AWT, Swing, JavaFX & SWT 2
A Tasten abfangen AWT, Swing, JavaFX & SWT 9
M Tastendruck abfangen AWT, Swing, JavaFX & SWT 8
S "Enter" in JTextField abfangen AWT, Swing, JavaFX & SWT 7
B Tastatureingabe in JComboBox abfangen. AWT, Swing, JavaFX & SWT 6
K JFrame setDefaultCloseOperation: Wie abfangen? AWT, Swing, JavaFX & SWT 2
G Ein klick auf JPanel abfangen und verarbeiten? AWT, Swing, JavaFX & SWT 3
J Keyevents abfangen in einer JTable AWT, Swing, JavaFX & SWT 2
F Habe Problem mit dem Abfangen einer Exception AWT, Swing, JavaFX & SWT 10
S Events bei 2 gleichen Jtree abfangen AWT, Swing, JavaFX & SWT 3
M Ereignis der JList abfangen AWT, Swing, JavaFX & SWT 2
O Exception abfangen AWT, Swing, JavaFX & SWT 19
K MouseEvents vor den Components abfangen? AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben