HI zusammen
Ich hoffe ich nerve nicht schon wieder mit dieser Frage, aber ich bin noch nicht ganz schlau geworden aus der Sache.
Folgende Situation:
Ich habe einen Jtreetable in dem ich mittels Drag and Drop, Knoten verschieben bzw. kopieren kann. Da man bestimmte Knoten nur vor, nach oder in den Knoten, unter dem Mauszeiger, droppen kann, möchte ich den Cursor ändern. Das funktioniert auch aber eben nur mit dem Flackern.
Soweit ich das verstanden habe, benutzen die Swing-Objekte bereits DoubleBuffer, somit komm ich da nicht weiter.
Ich mache nun folgendes:
Ich überschreibe die PaintComponent-Methode von JTreeTable, welches von JTable erbt
So wie ich das verstehe wird nun das aktuelle Bild nicht gelöscht und neu gezeichnet sondern nur gezeichnet.
In der Methode DragOver() mache ich dann folgendes:
Hier ist noch ne Abfrage aussenrum, die aber nichts zur sache tut.
Am Ende von dieser Methode mach ich dann ein repaint.
Und mein Cursor flackert beim Bewegen.
Danke schonmal für eure Hilfe.
Grüße
sylo
Ich hoffe ich nerve nicht schon wieder mit dieser Frage, aber ich bin noch nicht ganz schlau geworden aus der Sache.
Folgende Situation:
Ich habe einen Jtreetable in dem ich mittels Drag and Drop, Knoten verschieben bzw. kopieren kann. Da man bestimmte Knoten nur vor, nach oder in den Knoten, unter dem Mauszeiger, droppen kann, möchte ich den Cursor ändern. Das funktioniert auch aber eben nur mit dem Flackern.
Soweit ich das verstanden habe, benutzen die Swing-Objekte bereits DoubleBuffer, somit komm ich da nicht weiter.
Ich mache nun folgendes:
Ich überschreibe die PaintComponent-Methode von JTreeTable, welches von JTable erbt
Java:
public void paintComponent(Graphics g) {
super.paintComponent(g);
}
In der Methode DragOver() mache ich dann folgendes:
Java:
tempImage = new ImageIcon(this.getClass().getResource("/icons/In2.png")).getImage();
cursor = frame.getToolkit().createCustomCursor(tempImage, new Point (5, 5), "DropCursor1");
jTreeTable.setCursor(cursor);
Hier ist noch ne Abfrage aussenrum, die aber nichts zur sache tut.
Am Ende von dieser Methode mach ich dann ein repaint.
Java:
jTreeTable.repaint();
Und mein Cursor flackert beim Bewegen.
Danke schonmal für eure Hilfe.
Grüße
sylo