現在、ファイル システムを表すJavaFx-2 のTreeViewを使用しています。
ドラッグ アンド ドロップを有効にして移動操作を許可したいのですが、 TreeItemにドラッグ イベント リスナーが含まれていないようです。取り込み中の TreeView オブジェクトにのみドラッグ アンド ドロップを実装できましたが、サブアイテムでは機能しません。
何か不足していますか、それとも TreeItems でまだドラッグ アンド ドロップ イベントがサポートされていませんか?
現在、ファイル システムを表すJavaFx-2 のTreeViewを使用しています。
ドラッグ アンド ドロップを有効にして移動操作を許可したいのですが、 TreeItemにドラッグ イベント リスナーが含まれていないようです。取り込み中の TreeView オブジェクトにのみドラッグ アンド ドロップを実装できましたが、サブアイテムでは機能しません。
何か不足していますか、それとも TreeItems でまだドラッグ アンド ドロップ イベントがサポートされていませんか?
Oracle フォーラムで Csh が回答した質問: https://forums.oracle.com/forums/message.jspa?messageID=10426066#10426066
TreeCell にドラッグ オン ドロップを実装する必要があります。
次のように CellFactory を記述します。
TreeView<String> treeView = new TreeView<String>();
treeView.setCellFactory(new Callback<TreeView<String>, TreeCell<String>>() {
@Override
public TreeCell<String> call(TreeView<String> stringTreeView) {
TreeCell<String> treeCell = new TreeCell<String>() {
protected void updateItem(String item, boolean empty) {
super.updateItem(item, empty);
if (item != null) {
setText(item);
}
}
};
treeCell.setOnDragDetected(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent mouseEvent) {
}
});
return treeCell;
}
});
彼が自分の評判を主張したり、ソリューションに情報を追加したりしたい場合は、この回答を変更します。