0
私はJavaFXタスクを使用して、forループ内のいくつかの項目を処理する時間のかかるコードを実行しています。 タスクの進行状況は、forループ内から更新されるプログレスバーによって示されます。 しかし、進行状況バーには、処理されるべきアイテムの総数と処理されている現在のアイテムに関する進捗状況を示すラベルもあります。 私は仕事のmessageProperty
をラベルtextProperty
にバインドしようとしましたが、更新が必要な複数のラベルがあり、messageProperty
は単一のString
を保持できます。 私はカンマ区切り形式の文字列でmessageProperty
を更新して、しかし私は、だから私はmessageProperty
にChangeListener
を追加し、更新中にエラーjavaFXのタスクのmessageプロパティにchange listenerを追加するには
The method bind(ObservableValue<? extends String>) in the type Property<String> is not applicable for the arguments (String)
を検討しています。この
label1.textProperty().bind(task.messageProperty().toString().split(",")[0]);
label2.textProperty().bind(task.messageProperty().toString().split(",")[1]);
label3.textProperty().bind(task.messageProperty().toString().split(",")[2]);
のような文字列を分割すると考えられChangeListener
どのアプローチがベストで、どのように書くのを手伝ってもらえますかの?