2012-04-25 4 views
3

私はJavaFX 2の完全なnoobです(今朝私が採用しているHelloWorldで開始しました)。バックグラウンドジョブの送信と結果のステージの更新

テキストノードをバックグラウンドスレッドの結果で更新する必要があります。 JavaFX2で気をつける必要がある特別なことはありますか?それとも単に呼び出し可能ファイルを提出してテキストを更新するだけで十分ですか?チュートリアルへのポインタが評価されます。

答えて

4

同じバックグラウンドスレッドの終了時に

 Platform.runLater(new Runnable() { 
      @Override 
      public void run() { 
       // Update the text node with calculated results 
      } 
     }); 

を実行し、結果を計算した後、通常の状況で十分です。このリンクも役に立つかもしれません:
Execute task in background in JavaFX

1

Platform.runLater()は、JavaFXアプリケーションスレッドで後で実行されます。実行されたコンテンツが実行中のタスク(I/Oなしの安価な計算やUIの更新の呼び出しなど)であれば問題ありません。アニメーションやタイマーベースのものにはTimelineを使用してください。そうでなければ、またはServiceベースのソリューションであり、そのためにtutorialがあります。 JavaFXアプリケーションスレッドからアクティブなシーングラフに関係するオブジェクト(バインドによってトリガされた更新さえも含む)を読み書きしないでください。これ以上の議論と例はforum threadです。

関連する問題