2015-08-25 60 views
-1

當單位TextField和數量TextField在焦點時,輸入值應該相應地輸入。 enter image description here如何在javaFX8中處理多個文本字段輸入?

void requestFocus(){ 
    Platform.runLater(new Runnable() { 

     @Override 
     public void run() { 
      UnitText.requestFocus(); 
      System.out.println("Request focus thread"); 
     } 
    }); 
} 

@Override 
public void initialize(URL url, ResourceBundle rb) { 
    UnitText.requestFocus(); 
}  
+0

究竟什麼是你的問題?哪裏有問題? –

+0

當用戶點擊單位價格文本框並按下calc操作中的任何按鈕時,應該在單價文本框中執行,同樣的事情也應該在數量上發生。 –

+0

我不確定我是否正確理解您的問題,但我認爲您需要添加onClick監聽器 –

回答

0

你可以做

private TextField lastFocusedTextField ; 

@Override 
public void initialize(URL location, ResourceBundle resources) { 
    lastFocusedTextField = unitText ; 

    unitText.focusedProperty().addListener((obs, wasFocused, isNowFocused) -> { 
     if (isNowFocused) { 
      lastFocusedTextField = unitText ; 
     } 
    }); 

    quantityText.focusedProperty().addListener((obs, wasFocused, isNowFocused) -> { 
     if (isNowFocused) { 
      lastFocusedTextField = quantityText; 
     } 
    }); 



} 
在你的按鈕處理

,現在就

@FXML 
public void handleButton() { 
    // process button press in lastFocusedTextField... 
} 
+0

它的工作原理:)但我無法獲得obs和wasFocused參數。 –

+0

我不明白那個評論 –

+0

我們正在檢查哪個領域只關注初始化方法,那麼在每次關注任何textField時如何給出答案? –