Я делаю карточную игру на JavaFX и мне удалось найти код, который позволит мне перетаскивать фрагмент текста.Однако это не показывает перетаскиваемый текст.
То, что я сейчас делаю, - это установка моей сцены, которая является корневым узлом, в качестве цели, и установка моих карт в качестве источника.Это позволяет мне перетаскивать карты, которые являются изображениями, на моем рабочем столе, но я хочу две вещи, с которыми я борюсь.
Во-первых, я хочу, чтобы изображение действительно отображалось при перетаскивании, а во-вторых, я хочу, чтобыбыть в состоянии разместить изображение на моей сцене.
Вот код для карты
tempImageView.setOnDragDetected(new EventHandler<MouseEvent>() {
public void handle(MouseEvent event) {
/* drag was detected, start a drag-and-drop gesture*/
/* allow any transfer mode */
Dragboard db =
tempImageView.startDragAndDrop(TransferMode.ANY);
/* Put a string on a dragboard */
ClipboardContent content = new ClipboardContent();
content.putData(tempImageView);
db.setContent(content);
event.consume();
}
});
Вот код для моей сцены
scene.setOnDragOver(new EventHandler<DragEvent>() {
public void handle(DragEvent event) {
/* data is dragged over the target */
/* accept it only if it is not dragged from the same node
* and if it has a string data */
/* allow for both copying and moving, whatever user chooses */
event.acceptTransferModes(TransferMode.COPY_OR_MOVE);
event.consume();
}
});
Вотучебник, которому я пытался следовать: https://docs.oracle.com/javafx/2/drag_drop/jfxpub-drag_drop.htm
Я новичок в JavaFX, поэтому любая помощь будет потрясающей!