setText
需要一個String
作爲參數。您需要將結果轉換爲String
,例如通過使用Double.toString
。
然而,在這種情況下,我建議添加一個TextFormatter
到TextField
它允許你使用分配不同的類型/輸入值String
一個TextField
:
TextField summand1 = new TextField();
TextField summand2 = new TextField();
TextField result = new TextField();
StringConverter<Double> converter = new DoubleStringConverter();
TextFormatter<Double> tf1 = new TextFormatter<>(converter, 0d);
TextFormatter<Double> tf2 = new TextFormatter<>(converter, 0d);
TextFormatter<Double> tfRes = new TextFormatter<>(converter, 0d);
summand1.setTextFormatter(tf1);
summand2.setTextFormatter(tf2);
result.setTextFormatter(tfRes);
tfRes.valueProperty().bind(
Bindings.createObjectBinding(() -> tf1.getValue() + tf2.getValue(),
tf1.valueProperty(),
tf2.valueProperty()));
result.setEditable(false);
這允許您使用分配的值TextFormatter
,例如
double someValue = 3d;
tf1.setValue(someValue);
使用'String.valueOf(resultV)'' – saka1029