JavaFX JavaFX Chart Drag and Drop

lam_tr

Top Contributor
Hallo zusammen,

wie kann ich in einem JavaFX CHart die Data Nodes per Drag and Drop in der x oder y Koordinate verschieben?

Code:
                node.addEventHandler(MouseEvent.MOUSE_DRAGGED, new EventHandler(){
                    override handle(Event event) {
                        event.getX();
                        event.getY();
                    }
                })

Über diesen Weg kann ich leider die Data Nodes nur mit Screen Kordinationen anpassen, was ich eigentlich mehr will ist, die Berechnnungsdaten verschieben.

Zum Beispiel
id, x, y
------
1, 10, 10
2,15, 15
3, 30, 30

Wenn ich den Data Node (Serie#Data#Node) 3 im Chart verschiebe, sind da Screen Kordinaten von 3 Stellige Zahlen (200, 300). Ich will beim Verschieben Zahlen in Relation zu der Tabelle haben.

Grüße
lam
 
Naja. Du musst halt die Screen-Koordinaten auf Werte im chart ummappen. Wenn du also dein Chart kennst, "weisst" du ja, was unter dem Mauszeiger für ein Wert steckt. Ohne etwas Mathematik wirst du also nicht zum Ziel kommen...
 
Hallo dzim,

das mit dem Mathe 🙂 habe ich mir auch schon gedacht, aber ich denke wenn ich das Data Object mit den passenden x,y Werten setze, rechnet der automatisch für mich den Punkt auf dem Chart um und platziert sie richtig. Wieso soll es denn nicht umgekehrt gehen?

Nagut wenn es nicht anders geht, werde ich doch ein bisschen Dreisatz machen müssen.

Grüße
lam
 
Die Position innerhalb der GUI wird, wie du schon sagst, Anhand der Daten gesetzt. Es besteht aber, soweit ich weiss, kein bidirektionales Binding zwischen der Darstellung und den Daten - nur unidirektional von den Daten (der Serie) zum GUI.
 

Neue Themen


Zurück
Oben