Ich habe einen Jtree und einen benutzerdefinierten MouseListener/MouseMotionListener, der Scrollen auf Touch-Geräten behandelt.Deaktivieren Sie die TreeNode-Auswahl beim Ziehen
Mein Problem ist jetzt, dass, wenn ich das Ziehen starte, der aktuelle Knoten sofort ausgewählt wird, wenn ich die Maus drücke.
Frage: Wie kann ich die automatische Auswahl deaktivieren, wenn ich die Maus ziehe (es sollte ausgewählt sein, wenn ich darauf klicke, ohne zu ziehen).
Die Funktionen clicked
und pressed
sind in meinem DragscrollListener leer.
Hinweis:
ich nicht die DragScrollListener codiert haben - es here gefunden werden kann
Beispielcode:
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTree;
public class Test extends JFrame{
public Test(){
JTree tree = new JTree();
JScrollPane pane = new JScrollPane(tree);
DragScrollListener ds = new DragScrollListener(tree);
tree.addMouseListener(ds);
tree.addMouseMotionListener(ds);
getContentPane().add(pane);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
this.setSize(100,100);
}
public static void main(String[]arghs){
new Test();
}
}
1) Siehe [Erkennung/Fix für die hängenden Schließwinkel eines Codeblocks] (http://meta.stackexchange.com/q/251795/155831) für ein Problem, das nicht mehr gestört werden konnte. 2) Um eine bessere Hilfe zu erhalten, sollten Sie ein [MCVE] oder [Short, Self Contained, Correct Example] (http://www.sscce.org/) veröffentlichen. Das erste, was der obige Code benötigt, um es zu einem MCVE zu machen, ist der Code für den 'DragScrollListener'! –