2012-04-26 15 views
1

JFXPanelのドラッグアンドドロップイベントに問題があります.JFXPanelのJPanelにあります。 DragBoardにドラッグメッセージをプッシュすると、アプリケーションのjavaFX部分がもう動かない。私はスイングイベントのメカニズムについては思っていますが、わかりません。他のイベントに問題はありません。それは私を混乱させた。この問題の解決策はありますか?前もって感謝します。Swingを使用してJavaFX 2.2でドラッグアンドドロップ操作を行う方法は?

public class MyScene extends Scene { 

    public MyScene(VBox vBoxMainLayout) { 
     super(vBoxMainLayout); 

     HBox hBox = new HBox(); 
     hBox.setPrefSize(10000, 10000); 
     hBox.setSpacing(40); 

     Button buttonSource = new Button("Source"); 
     buttonSource.setMinSize(60, 30); 

     buttonSource.setOnDragDetected(new EventHandler<MouseEvent>() { 
      public void handle(MouseEvent event) { 
       Dragboard db = startDragAndDrop(TransferMode.ANY); 

       ClipboardContent content = new ClipboardContent(); 
       String message = "Drag operatation is done"; 
       content.putString(message); 
       db.setContent(content); 
       event.consume(); 
      } 
     }); 

     buttonSource.setOnDragDone(new EventHandler<DragEvent>() { 
      public void handle(DragEvent event) { 

       event.consume(); 
      } 
     }); 

     TextArea textAreaTarget = new TextArea(); 
     textAreaTarget.setMinSize(200, 500); 

     hBox.getChildren().add(buttonSource); 
     hBox.getChildren().add(textAreaTarget); 

     vBoxMainLayout.getChildren().add(hBox); 
    } 

} 

public class Main extends Application { 

    public static void main(String[] args) { 
     launch(args); 
    } 

    @Override 
    public void start(Stage stage) { 
     VBox vBoxMainLayout = new VBox(); 
     MyScene myScene = new MyScene(vBoxMainLayout); 

     JFrame frame = new JFrame(); 
     JFXPanel arg0 = new JFXPanel(); 
     arg0.setScene(myScene); 
     frame.getContentPane().add(arg0); 
     frame.setVisible(true); 

    } 
} 
+0

ありがとうございました。それはバグのようです。あなたはそれについてどう思いますか? –

答えて

0

これはJavaFXの2.1の既知のデッドロックだったと(私はオラクルから学んだことthatsの)2.2にプッシュ私はそれがSTIL​​解決していないと思います。

関連する問題