###前提・実現したいこと
ここに質問したいことを詳細に書いてください
現在、JavaFXを使用しアプリケーションを作成しています。
同一コンテナ内でボタンコントロールをドラッグアンドドロップで移動させたいのですが、
コンテナに張り付いたままで、ドラッグ最中の動作(マウスカーソルに半透明のアイコンが付いてくるような)にもなりません。
ボタンコントロールをドラッグアンドドロップするにはどうしたらよいでしょうか?
###発生している問題・エラーメッセージ
特になし
###該当のソースコード
Java
1 //ドラッグ 2 dbutton.setOnDragDetected(new EventHandler<MouseEvent>() { 3 @Override 4 public void handle(MouseEvent event) { 5 System.out.println("ドラッグが開始されました。"); 6 Dragboard db = button.startDragAndDrop(TransferMode.MOVE); 7 ClipboardContent content = new ClipboardContent(); 8 content.put(DataFormat.RTF, dbutton); 9 db.setContent(content); 10 event.consume(); 11 } 12 }); 13 //D&Dされる側(同一コンテナ) 14 anchor.setOnDragOver(new EventHandler<DragEvent>() { 15 public void handle(DragEvent event) { 16 event.acceptTransferModes(TransferMode.COPY_OR_MOVE); 17 System.out.println("DragOver"); 18 event.consume(); 19 } 20 }); 21 anchor.setOnDragEntered(new EventHandler<DragEvent>() { 22 public void handle(DragEvent event) { 23 System.out.println("DragEntered"); 24 event.consume(); 25 } 26 }); 27 anchor.setOnDragExited(new EventHandler<DragEvent>() { 28 public void handle(DragEvent event) { 29 System.out.println("DragExited"); 30 event.consume(); 31 } 32 }); 33 anchor.setOnDragDropped(new EventHandler<DragEvent>() { 34 public void handle(DragEvent event) { 35 Dragboard db = event.getDragboard(); 36 boolean success = false; 37 if (db.hasString()) { 38 System.out.println("DragDropped"); 39 success = true; 40 } 41 event.setDropCompleted(success); 42 event.consume(); 43 } 44 }); 45 anchor.getChildren().add(dbutton);
###試したこと
###補足情報(言語/FW/ツール等のバージョンなど)
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/15 21:20
2017/04/16 00:05
2017/04/16 22:57