Troca de telas

1 resposta
F

Alguem saberia me dizer como é o melhor jeito de trabalhar com troca de telas no javafx?

1 Resposta

D

Eu usaria um root e trocaria o conteúdo interno

StackPane root = new StackPane(); // pode ser outros panes, geralmente uso este
// Scene scene = new Scene(root); // se for no scene
root.getChildren().addAll(tela1, tela2);

// corrige o posicionamento
tela1.managedProperty().bind(tela1.visibleProperty());
tela2.managedProperty().bind(tela2.visibleProperty());

tela1.setVisible(true);
tela2.setVisible(false);
// ou
// tela1.setVisible(false);
// tela2.setVisible(true);

// usando um bind
BooleanProperty chave = new SimpleBooleanProperty();
tela1.visibleProperty().bind(chave);
tela2.visibleProperty().bind(chave.not());
chave.set(true ou false);
// se for para mais telas, teria que usar um IntegerProperty ou ObjectProperty e
// converter para boolean usando Bindings.createBooleanBinding
Criado 4 de novembro de 2017
Ultima resposta 6 de nov. de 2017
Respostas 1
Participantes 2