2014-01-29 40 views
1
public void loginFired(ActionEvent event) { 
     try{ 
     Stage login = new Stage(); 
     loadView(new Locale("en", "EN")); 
     URL location = getClass().getResource("login.fxml"); 
     fxmlLoader.setLocation(location); 
     AnchorPane page = (AnchorPane) fxmlLoader.load(location.openStream()); 
     Scene scene = new Scene(page); 
      hostLogin.setScene(scene); 
      hostLogin.initStyle(StageStyle.UTILITY); 
      hostLogin.setTitle("Login info"); 
      hostLogin.setResizable(false); 
      hostLogin.initOwner(this.stage); 
      hostLogin.initModality(Modality.APPLICATION_MODAL); 
      hostLogin.show(); 

這裏我使用代碼後面的loadview方法來獲取加載屬性文件。對於第一個事件正確觸發的頁面,當我關閉窗口並單擊該按鈕/ loginFired時,它會拋出異常。發生異常:已經指定了根值。 請指導我一樣。我對這個javafx的東西完全陌生。發生異常:第二次加載fxml頁面時已經在Javafx中指定了根值

回答

3

FXMLLoader尚未加載FXML文件兩次。你要麼必須

  • 作出新FXMLLoader例如,設置位置並加載它
  • 使用靜態負載方法
  • 通過調用setRoot(null)(不推薦)
重置當前FXMLLoader實例
相關問題