2 つの ListProperties をバインドする必要があります。
ObservableList<Data<Number, Number>> chartDataList = FXCollections.observableArrayList();
ListProperty<Data<Number, Number>> chartDataProperty = new SimpleListProperty<>(this, "chartData", chartDataList);
ObservableList<Point2D> observableData = FXCollections.observableArrayList();
ListProperty<Point2D> dataProperty = new SimpleListProperty<>(this, "Data", observableData);
chartDataList
LineChart を表示するために使用されますが、他の ( data
) は私のプログラムの残りの部分で使用されます。だけを使用するchartDataProperty
ため、実際には必要ありません(ただし、バインドには必要です)。LineChart
chartDataList
注LineChart
:マウスを使用してポイントを手動でドラッグする手段があるため、バインディングは双方向である必要があります。
これを処理する直接的な方法は見つかりませんでした。変換のみが to/from String
(またはListProperty<String>
) のようです。man-in-the-middle でそれを使用できますが、非常に非効率ListProperty<String>
に見えます。
ChangeListner
それ以外の場合は、考えられるすべてのケースを手動で処理して、使用法に頼る必要があります。
もっと良い選択肢があると教えてください。