Как поменять местами экраны в javafx-приложении в классе контроллера?

Эй, я долго искал в сети, но не могt найти решение следующей проблемы:

В javafx вы получили 3 основных файла; класс контроллера, файл fxml и класс приложения. Теперь я хочу отреагировать в контроллере на нажатие кнопки (которое прекрасно работает) и изменить экран на это нажатие (что вы обычно делаете с stage.setScreen ()), но я не имею никакого отношения к стадии (которую вы можно найти в классе приложений).

Применение-Sample:

public class JavaFXApplication4 extends Application {

@Override
public void start(Stage stage) throws Exception {
    Parent root = FXMLLoader.load(getClass().getResource("Sample.fxml"));

    Scene scene = new Scene(root);

    stage.setScene(scene);
    stage.show();
}

/**
 * The main() method is ignored in correctly deployed JavaFX application.
 * main() serves only as fallback in case the application can not be
 * launched through deployment artifacts, e.g., in IDEs with limited FX
 * support. NetBeans ignores main().
 *
 * @param args the command line arguments
 */
public static void main(String[] args) {
    launch(args);
}
}

FXML-Sample:










  
  
  
  

Контроллер-Sample:

public class SampleController implements Initializable {

@FXML
private Label label;

@FXML
private void handleButtonAction(ActionEvent event) {
    System.out.println("You clicked me!");
    label.setText("Hello World!");
    //Here I want to swap the screen!
}

@Override
public void initialize(URL url, ResourceBundle rb) {
    // TODO
}    
}

Я был бы благодарен за любую помощь.

Ответы на вопрос(3)

Ваш ответ на вопрос