JavaFXチュートリアルの1つから作成された単一ウィンドウのJavaFXアプリケーションがあります。
次の関数で新しいウィンドウのコンテンツを設定しています:
private Initializable replaceSceneContent(final String fxml) throws Exception {
// wczytanie fxml
FXMLLoader loader = new FXMLLoader();
InputStream in = Main.class.getResourceAsStream(fxml);
loader.setBuilderFactory(new JavaFXBuilderFactory());
loader.setLocation(Main.class.getResource(fxml));
AnchorPane page;
try {
page = (AnchorPane) loader.load(in);
} finally {
in.close();
}
Scene scene = new Scene(page, w, h);
stage.setScene(scene);
return (Initializable) loader.getController();
}
しかし、この fxml ファイルから TextFields の 1 つを選択して、デフォルトでアクティブにしたいと考えています。これを行う方法?コントローラーの初期化メソッドで requestFocus メソッドを呼び出そうとしましたが、機能しませんでした。TextField クラスにも AnchorPane クラスにも適切なプロパティが見つかりませんでした (AnchorPane は fxml コントロール ツリーのルート要素です)。