2017-05-28 19 views
-1

我有2 .fxml文件(FXMLDocument.fxml/login.fxml)和一個控制器文件(FXMLDocumentController)。我想從控制器中刪除FXMLDocument.fxml,並將login.fxml添加到控制器。如何添加新的fxml到控制器

當我打電話給主要方法時,我希望得到登錄表單的提示,而不是FXMLDocument.fxml

任何想法發生了什麼?

PS:login.fxml使用SceneBuilder創建。

+1

「我有2個FXML文件和一個控制器」。別。每個FXML文件都應該有自己的控制器類。 –

+0

可以代替嗎? .i表示'FXMLDocument.fxml'由IDE生成.'login.fxml'由我使用場景生成器創建,我不想IDE生成的fxml insted,我想replce我的login.fxml。 – NicoleZ

+2

對不起,你在問什麼? 「它可以取代什麼?」意思? (Can *什麼*替換*什麼*?)只需在每個FXML文件中指定一個不同的控制器類。 –

回答

1

您不必使用IDE生成的默認FXML文件。這裏是一個將使用login.fxml一個基本的控制器:

public class LoginController { 

    public LoginController(){ 
     try { 
      FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("login.fxml")); 
      fxmlLoader.setController(this); 
      fxmlLoader.load(); 
     } catch (IOException exception) { 
      System.out.println("Error loading content."); 
      System.exit(0); 
     } 
    } 

} 

注意與FXMLLoader(getClass().getResource("login.fxml"))行。這是您如何將FXML文件添加到控制器。

相關問題