AWT MouseListener unklare abhandlung von Events

phouli89

Mitglied
Hallo, ich habe mal wieder ein kleines Problem und hoffe das ich nur irgendwas nicht blicke, vieleicht könnt Ihr mir helfen.

Es geht wiedermal um einen Grafischen Templateeditor. Auf dem Editor (JLayeredPane) können verschiedene JComponents hinzugefügt werden, diese liegen innerhalt eines JComponentBounds (eine Klasse um Affine Transformation zu ermöglichen - extends JInternalFrame)
Auf dem JComponents und den JComponentBounds eines jeden Objects liegt ein MouseListener um bei einem Klick ein Optionsfeld in einem JPanel anzuzeigen (Optionen zur bearbeitung der jeweiligen Komponente) Soweit funktioniert auch alles. Die neuste Funktion soll sein, dass auf der Editoroberfläche weitere kleinere Editoren eingefügt werden können (JLayeredPane) auf der ebenfalls JComponents platziert werden können. Für den MouseListener verwende ich "mousePressed" .

Problem: bei einem Klick auf eine JComponent in dem Kleineren Editor wird das JLayeredPane des kleinen Editors in Event.getSource() zurückgegeben. Innerhalb der Aktion habe ich ein System.out platziert, daraus kann ich sehen das im Normalfall das Event von unten nach oben läuft (Editor -> JcomponentBounds -> JComponent)
Bei einem Objekt im kleinen Editor wird mit allerdings zweimal das JLayeredPane des kleinen Editors ausgegeben, bei einem klick auf den Rahmen des Objects (JComponentBounds) funktioniert es allerdings, da wird nur das Objekt im Event abgehandelt.

Lösungsversuche:
- Event mit consumed() abfangen hat nicht funktioniert (wie auch, das das Objekt garnicht in der abfolge auftaucht).
- Mit MouseClicked funktioniert es, ist leider unbrauchbar für meine Zwecke (wo ist der Unterschied?)

(Editor hat einen seperaten Mouselistener, alle anderen Objekte darauf bekommen über eine ControllerKlasse den selben Mouselistener)

Ich hoffe das war jetzt nicht zu durcheinander, ich habe mal eine kleine Grafik angefügt, ich denke der Code verwirrt hier nur, ist ja eigentlich eine simple Sache, oder sollte es zumindest sein.

bsp.jpg


Vielen Dank für eure Hilfe, ich seh den Wald vor lauter Bäumen nicht ;)
 

phouli89

Mitglied
Also, ich habe gerade noch was getestet und festgestellt, selbst wenn ich dem kleinen Editor (JLayeredPane keinen Listener gebe und ein darauf liegendes Objekt anklicke, wird mir trotzdem der kleine Editor zurückgegeben) Demnach wird das event erst gar nicht auf des Objet angewendet sondern direkt auf den parent (Wie gehabt funktioniert der Listener auf dem Rahmen (JComponentBounds))
 

phouli89

Mitglied
Da das Problem bei anderen Events nciht auftaucht und ich das mouseEntered Event ohnehin nutze abe ich das jetzt mal recht primitiv gelöst, vieleicht hat ja jemand noch ne bessere Idee, diese Lösung mag vieleicht funktionieren aber ich denke damit komme ich bei einigen anderen Operationen später noch in Konflikt. Also wenn jemand eine Idee hat wäre ich sehr dankbar.

Code:
private MouseAdapter elementOptionLoader = new MouseAdapter() {
        JComponent activeObject;
        
        @Override
        public void mouseEntered(MouseEvent evt) {
			// Mouse Entered Display Boder
            activeObject = ((JComponent) evt.getSource());;
        } // END mouseEntered

        @Override
        public void mouseExited(MouseEvent evt) {
			// Mouse Exited Border invisible
        } // END mouseExited

        @Override
        public void mousePressed(MouseEvent evt) {
            System.out.println("Active Object is: "+activeObject.getName());
			// statt mit evt.getSource() wird mit activeObject gearbeitet
        } // END mousePressed  

    }; // END elementOptionLoader
 

phouli89

Mitglied
Peinlich aber wahr, der Fehler kam aus der JComponentBounds-Klasse die ich mit nicht gründlich genug angeguckt hatte, dort habe ich ein JComponentContainer.dispatchEvent(MouseEvent); für Mouse Pressed und Mouse Released gefunden, jetzt funktionierts ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Viele ActionListener (MouseListener) - Performance AWT, Swing, JavaFX & SWT 24
ExceptionOfExpectation MouseListener-Objekte zu den Graphics-Objekten einfügen AWT, Swing, JavaFX & SWT 3
R Punkt von MouseListener hat falsche Koordinate AWT, Swing, JavaFX & SWT 2
J MouseListener wird nicht ausgeführt. AWT, Swing, JavaFX & SWT 4
S Swing Rechteck über JTable zeichnen (per MouseListener) AWT, Swing, JavaFX & SWT 1
G vorgefertigte Buttons oder neue Komponente mit MouseListener? AWT, Swing, JavaFX & SWT 0
F ListCellRenderer mit JLabel und MouseListener AWT, Swing, JavaFX & SWT 4
D Event Handling MouseListener funktioniert seit Java 8 nicht mehr AWT, Swing, JavaFX & SWT 13
M MouseListener auf table oder scrollPane AWT, Swing, JavaFX & SWT 11
B Event Handling MouseListener Behält seine Variablen, auch wenn ich ein neus Objekt erstelle AWT, Swing, JavaFX & SWT 2
D Swing &MouseListener in einem JFrame, sinnig? AWT, Swing, JavaFX & SWT 11
U MouselIstener zu JFrame AWT, Swing, JavaFX & SWT 6
F Swing MouseListener im JPanel AWT, Swing, JavaFX & SWT 3
J Swing Button mit JTable und MouseListener AWT, Swing, JavaFX & SWT 8
F JPanel + MouseListener AWT, Swing, JavaFX & SWT 5
JavaInBrain Swing Rückgabe aus MouseListener-Klasse AWT, Swing, JavaFX & SWT 3
A SWT SWT Scale und MouseListener AWT, Swing, JavaFX & SWT 7
J MouseListener und rechte Maustaste AWT, Swing, JavaFX & SWT 3
R MouseListener auf JPanel AWT, Swing, JavaFX & SWT 3
Q Swing MouseListener auf JTable geht nicht AWT, Swing, JavaFX & SWT 2
J Swing Einbau MouseListener in JPanel AWT, Swing, JavaFX & SWT 3
N Mit MouseListener X-Y Angaben vom Bild erfahren AWT, Swing, JavaFX & SWT 3
T MouseListener an Ecken von Polygonen hinzufügen AWT, Swing, JavaFX & SWT 5
H Swing JPanel in JTable mit MouseListener AWT, Swing, JavaFX & SWT 3
A Individueller MouseListener ? AWT, Swing, JavaFX & SWT 7
B MouseListener im Renderer einer JComboBox AWT, Swing, JavaFX & SWT 3
M MouseListener/MouseMotionListener AWT, Swing, JavaFX & SWT 2
njans SWT MouseListener exited AWT, Swing, JavaFX & SWT 4
danx066 MouseListener macht was er will AWT, Swing, JavaFX & SWT 14
K MouseListener für Objekte auf einem Frame AWT, Swing, JavaFX & SWT 4
P JLabel Farbe/Bild ändern aus MouseListener heraus AWT, Swing, JavaFX & SWT 3
U Swing Generierung mehrerer Kreise per MouseListener AWT, Swing, JavaFX & SWT 16
Semox Swing JApplet: Problem MouseListener Anmeldung AWT, Swing, JavaFX & SWT 3
C JTappedPane Mouselistener auf Überschrift Registerkarte AWT, Swing, JavaFX & SWT 2
M MouseListener AWT, Swing, JavaFX & SWT 3
K AWT MouseListener linke und rechte Maustaste AWT, Swing, JavaFX & SWT 5
C Swing MouseListener Doppelklick-Geschwindigkeit AWT, Swing, JavaFX & SWT 4
N Swing MouseListener in JTable AWT, Swing, JavaFX & SWT 4
1 Eigene JComponent mit MouseListener versehen AWT, Swing, JavaFX & SWT 10
Developer_X AWT Component added keinen MouseListener AWT, Swing, JavaFX & SWT 7
R MouseListener wird nicht aufgerufen AWT, Swing, JavaFX & SWT 3
P JComboBox und MouseListener AWT, Swing, JavaFX & SWT 2
W MouseListener im editable ComboBox AWT, Swing, JavaFX & SWT 14
raptorrs Swing MouseListener reagiert nicht auf Instanz einer JTable AWT, Swing, JavaFX & SWT 6
multiholle Swing Mouselistener auf Parentpanel immer aktiv AWT, Swing, JavaFX & SWT 7
C MouseListener und ActionListener kombinieren AWT, Swing, JavaFX & SWT 17
M Komponenten einer unbestimmten Anzahl und MouseListener AWT, Swing, JavaFX & SWT 4
A MouseListener funktionert nie AWT, Swing, JavaFX & SWT 12
C Probleme mit Größe und mit MouseListener AWT, Swing, JavaFX & SWT 2
W MouseListener für jede Zelle einer JTable AWT, Swing, JavaFX & SWT 4
E MouseListener Problem AWT, Swing, JavaFX & SWT 4
D jButton mit ImageIcon & MouseListener AWT, Swing, JavaFX & SWT 5
S MouseListener zurückverfolgung auf element. AWT, Swing, JavaFX & SWT 7
B MouseListener / doppelklick geht net AWT, Swing, JavaFX & SWT 16
M JCheckBox Standard MouseListener entfernen AWT, Swing, JavaFX & SWT 13
hdi Wie mach ich diesen MouseListener AWT, Swing, JavaFX & SWT 4
G MouseListener & KeyListener AWT, Swing, JavaFX & SWT 4
H JComboBox reagiert nicht auf MouseListener AWT, Swing, JavaFX & SWT 5
2 Mouselistener AWT, Swing, JavaFX & SWT 2
W MouseListener, getClickCount und Doppelklick AWT, Swing, JavaFX & SWT 6
S swing komponenten mit mouselistener rotieren AWT, Swing, JavaFX & SWT 15
G JFrame,JLabel,MouseListener AWT, Swing, JavaFX & SWT 6
F Wie MouseListener bei TableModel anmelden? AWT, Swing, JavaFX & SWT 3
V Frage zu MouseListener --> mousePressed() AWT, Swing, JavaFX & SWT 5
C MouseListener für Spalte eines JTables AWT, Swing, JavaFX & SWT 4
K Problem mit 2 MouseListener. AWT, Swing, JavaFX & SWT 3
M MouseMotionListener oder mouseListener AWT, Swing, JavaFX & SWT 6
T JComboBox und MouseListener AWT, Swing, JavaFX & SWT 11
F MouseListener - Unhandled IOException AWT, Swing, JavaFX & SWT 5
padde479 Statusleiste mit MouseListener aktualisieren AWT, Swing, JavaFX & SWT 3
L Problem mit MouseListener, AdjustmentListener AWT, Swing, JavaFX & SWT 6
T MouseListener Problem AWT, Swing, JavaFX & SWT 3
F Mouselistener wird wiederholt aufgerufen AWT, Swing, JavaFX & SWT 3
G Frage zu MouseListener und speichern des Wertes (reflektion? AWT, Swing, JavaFX & SWT 6
B frage zu MouseListener AWT, Swing, JavaFX & SWT 5
O MouseListener - Wert-Übergabe AWT, Swing, JavaFX & SWT 3
W JPanel, JLabel und MouseListener -> auf clicks reagieren AWT, Swing, JavaFX & SWT 5
S MouseListener auf einem einzelnen Tab setzen AWT, Swing, JavaFX & SWT 3
B MouseListener & Fenster schliessen AWT, Swing, JavaFX & SWT 3
G MouseListener AWT, Swing, JavaFX & SWT 4
G Tooltip sperrt MouseListener? AWT, Swing, JavaFX & SWT 6
S JComboBox und MouseListener AWT, Swing, JavaFX & SWT 5
D Koordinaten der Bildschirmposition auslesen (MouseListener?) AWT, Swing, JavaFX & SWT 7
A Klassenübergreifend MouseListener verwenden AWT, Swing, JavaFX & SWT 14
N "globaler" MouseListener (+MouseMotionListener) AWT, Swing, JavaFX & SWT 4
M ToolTipText für JTable mit MouseListener ohne anklicken? AWT, Swing, JavaFX & SWT 7
A MouseListener auf Bild legen ? AWT, Swing, JavaFX & SWT 16
S Mouselistener erzeugt kein Event in einem Menuitem AWT, Swing, JavaFX & SWT 2
J MouseListener AWT, Swing, JavaFX & SWT 3
A JPanels in JPanel und MouseListener AWT, Swing, JavaFX & SWT 3
C Mehrere MouseListener? AWT, Swing, JavaFX & SWT 7
U Keylistener und Mouselistener AWT, Swing, JavaFX & SWT 2
L Event-handling, MouseListener AWT, Swing, JavaFX & SWT 5
T Problem mit MouseListener bei JButton AWT, Swing, JavaFX & SWT 5
K mein keyListener scheint Konflict haben mit mouseListener AWT, Swing, JavaFX & SWT 6
G Problem mit MouseListener AWT, Swing, JavaFX & SWT 9
M Java FX Unklare Java FX 8 Warnung AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben