Olá galera, sei que é algo muito básico mas estou tendo dificuldades quanto a isso!
Bom, estou criando um projeto onde terei diversos FXML’s, e essas fxml’s devem interagir entre si como um menu. Então o que preciso, é fazer com que quando um botão seja acionado gere um novo stage ou uma nova scene dentro do stage principal. Gostaria de saber de que forma posso fazer isso.
Abaixo uma imagem do projeto que pretendo fazer, para que fique mais claro quando me refiro ao menu!
Amigo, tenho um projeto semelhante. No meu caso, tenho uma barra de menu e as opções
Para adicionar, eu dou um fx:id para a área que quero incluir, no seu caso, é este espaço onde você vai incluir o stage/scene
Crio o objeto na minha Controller e uso as propriedades dele para chamar o FXML que eu quero.
Recentemente eu passei por isso e criei um tópico. Mas veja bem, estou adicionando abas na tela via código.
Bom, eu segui essa linha de raciocínio e cheguei a essa solução!
Para criar uma nova stage dentro do actionEvent:
Parent root1 = FXMLLoader.load(getClass().getResource("/sample/cadastro.fxml"));
Stage stage = new Stage();
Scene scene = new Scene(root1, 400, 240);
stage.setScene(scene);
stage.show();
Enquanto que para criar uma nova scene dentro da própria stage:
Parent root1 = FXMLLoader.load(getClass().getResource("/sample/cadastro.fxml"));
Scene scene1 = new Scene(root1);