我一直想知道如何在两个java fx窗口之间拖放列表视图项.
我使用的代码是
tilePane.setOnDragDropped((event) -> {
Dragboard db = event.getDragboard();
boolean success = false;
if (db.hasString()) {
TilePane pane = (TilePane) event.getGestureTarget();
if (pane.getChildren().size() >= 10) {
//error
} else {
ListView<Item> list = (ListView<Item>) event
.getGestureSource();
addShopItem(pane, list.getSelectionModel()
.getSelectedItem());
success = true;
}
}
event.setDropCompleted(success);
event.consume();
});
Run Code Online (Sandbox Code Playgroud)
列表视图和磁贴窗格都曾在一个窗口中,但我决定将它们分成不同的javafx窗口,这样可以提供更大的灵活性.一个窗口具有列表视图,另一个窗口具有tilepane.
我想将列表视图项拖到tilepane(其他窗口),但此代码不再有效,因为getGestureTarget()对于不同的应用程序为null.
谢谢
javafx-8 ×1