2017-05-06 24 views
0

我想知道如何直接從UI設置JavaFX微調器的值。就像我現在使用的那樣,當我直接設置它不被更新時,我必須上下使用這些按鈕來更改它。微調整數值沒有更新後直接從UI輸入

我知道Swing,你可以使用微調器setValue,但它似乎與JavaFX不同。

FXML:

<Spinner fx:id="spinnerClusters" editable="true" prefHeight="25.0" prefWidth="107.0"> 
    <HBox.margin> 
     <Insets left="10.0" /> 
    </HBox.margin> 
</Spinner> 

控制器:

public void initialize(URL url, ResourceBundle rb) { 
      spinnerClusters.setValueFactory(new SpinnerValueFactory.IntegerSpinnerValueFactory(1, 100, 0));  
     } 
//// 
    int value = spinnerNBClusters.getValue(); 

我怎樣才能使值的變化,如果用戶輸入直接進入微調場?

+0

按 「Enter」。這是Java 8中的一個錯誤,應該修復爲9:https://bugs.openjdk.java.net/browse/JDK-8150946。 – Itai

+0

[在JavaFX Spinner中手動輸入文本的可能重複項不會更新該值(除非用戶按ENTER鍵)](http://stackoverflow.com/questions/32340476/manually-typing-in-text-in-javafx-spinner -is-未更新最值,除非用戶) – Itai

回答

0

由於sillyfly提請我注意,這是Java中的漏洞8.

的解決方案是按「Enter」。

應固定在Java中9:

bugs.openjdk.java.net/browse/JDK-8150946

相關問題