2017-05-28 9 views
-1

2つのコントローラファイル(FXMLDocumentController)があります。コントローラーからFXMLDocument.fxmlを取り除き、コントローラーにlogin.fxmlを追加します。コントローラに新しいfxmlを追加する方法

メインメソッドを呼び出すと、FXMLDocument.fxmlの代わりにログインフォームが表示されます。

何が起こっているのでしょうか?

PS:login.fxmlSceneBuilder使用して作成されます。

+1

"2つのFXMLファイルと1つのコントローラがあります。"しないでください。各FXMLファイルには独自のコントローラクラスが必要です。 –

+0

それを交換できますか? .iは、 'FXMLDocument.fxml'がIDEによって生成されたことを意味します.'login.fxml'は、シーンビルダーを使用して私が作成したものですが、IDEのgenated fxml instedにlogin.fxmlを再現したいです。 – NicoleZ

+2

申し訳ありませんが、あなたは何を求めていますか? "それは何を置き換えることができますか?"平均? (Can * what * replace * what?)各FXMLファイルに異なるコントローラクラスを指定するだけです。 –

答えて

1

IDEで生成されたデフォルトの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"))とライン:ここlogin.fxmlを使用する基本的なコントローラです。これは、FXMLファイルをコントローラに追加する方法です。

関連する問題