Eu estou a tarde inteira testando métodos diferentes e nenhum funciona. O que mais chegou próximo de funcionar é um onde se é utilizado “get”, porém quando confirmo o novo valor ele não aparece. Irei deixar algumas partes do programa aqui, se alguém puder ajudar ficarei muito agradecido. (se precisar de mais alguma coisa só pedir)
Classe Principal:
package encontrotesla;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
/**
*
* @author conta
*/
public class EncontroTesla extends Application {
private static Stage stagePrincipal;
private static Scene telaInicial;
private static Scene telaConvidados;
private static Scene telaAddConvidado;
@Override
public void start(Stage stage) throws Exception{
stagePrincipal = stage;
stage.setTitle("Painel de Controle - Encontro Tesla");
stage.setMaximized(true);
Parent telaPrincipal = FXMLLoader.load(getClass().getResource("FXMLTelaInicial.fxml"));
telaInicial = new Scene(telaPrincipal);
Parent telaDosConvidados = FXMLLoader.load(getClass().getResource("FXMLConvidados.fxml"));
telaConvidados = new Scene(telaDosConvidados);
Parent telaDosAddConvidados = FXMLLoader.load(getClass().getResource("FXMLAddConvidado.fxml"));
telaAddConvidado = new Scene(telaDosAddConvidados);
stage.setScene(telaInicial);
stage.show();
}
public static void mudarTela(String click){
switch(click){
case "convidados":
stagePrincipal.setScene(telaConvidados);
break;
case "addConvidado":
stagePrincipal.setScene(telaAddConvidado);
break;
case "voltar":
stagePrincipal.setScene(telaInicial);
break;
}
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
launch(args);
}
}
FXMLConvidadosController.java:
package encontrotesla;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
/**
* FXML Controller class
*
* @author conta
*/
public class FXMLConvidadosController implements Initializable {
@FXML
private Button btnAddConvidado;
@FXML
public static Label convidado1;
@FXML
private Label convidado2;
@FXML
private Label convidado3;
@FXML
private Label convidado4;
@FXML
private Label convidado6;
@FXML
private Label convidado5;
@FXML
private Label convidado7;
@FXML
private Label convidado8;
@FXML
private Label convidado9;
@FXML
private Label convidado10;
@FXML
private Label convidado11;
@FXML
private Button btnVoltar;
/**
* Initializes the controller class.
* @param url
* @param rb
*/
@Override
public void initialize(URL url, ResourceBundle rb) {
}
@FXML
private void adicionarConvidado(ActionEvent event) {
EncontroTesla.mudarTela("addConvidado");
}
@FXML
private void clicarVoltar(ActionEvent event) {
EncontroTesla.mudarTela("voltar");
}
}
FXMLAddConvidadoController.java:
package encontrotesla;
import static encontrotesla.FXMLConvidadosController.convidado1;
import java.net.URL;
import java.util.ArrayList;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
/**
* FXML Controller class
*
* @author conta
*/
public class FXMLAddConvidadoController implements Initializable {
@FXML
private Button btnAdicionar;
@FXML
private Button btnVoltar;
@FXML
private Button btnCancelar;
@FXML
private TextField txtNome;
@FXML
private TextField txtTelefone;
@FXML
private TextField txtEmail;
@FXML
private TextField txtData;
public static ArrayList<Convidados> convidados = new ArrayList();
/**
* Initializes the controller class.
* @param url
* @param rb
*/
@Override
public void initialize(URL url, ResourceBundle rb) {
// TODO
}
@FXML
private void clicarAdicionar(ActionEvent event) {
String nome = txtNome.getText();
String data = txtData.getText();
String telefone = txtTelefone.getText();
String email = txtEmail.getText();
if("".equals(nome)){
alertNomeVazio();
}else if("".equals(data)){
alertDataVazia();
}else if("".equals(telefone)){
alertTelefoneVazio();
}else if("".equals(email)){
alertEmailVazio();
}else{
Convidados convidado = new Convidados(nome, data, telefone, email);
convidados.add(convidado);
alertAdicionado();
txtNome.clear();
txtData.clear();
txtTelefone.clear();
txtEmail.clear();
System.out.println(convidados);
convidado1.setText(convidados.get(1) + "");
}
}
@FXML
private void clicarVoltar(ActionEvent event) {
EncontroTesla.mudarTela("convidados");
}
@FXML
private void clicarCancelar(ActionEvent event) {
txtNome.clear();
txtData.clear();
txtTelefone.clear();
txtEmail.clear();
}
public void alertAdicionado(){
Alert alertAdd = new Alert(Alert.AlertType.INFORMATION);
alertAdd.setTitle("Painel de Controle - Convidado Adicionado");
alertAdd.setHeaderText("Convidado Adicionado");
alertAdd.setContentText("O convidado foi adicionado em sua lista de convidados.");
alertAdd.show();
}
public void alertNomeVazio(){
Alert alertNVazio = new Alert(Alert.AlertType.ERROR);
alertNVazio.setTitle("Painel de Controle - Erro 01");
alertNVazio.setHeaderText("Nome não informado");
alertNVazio.setContentText("O processo não foi concluído pois o campo do nome está vazio. Preencha-o!");
alertNVazio.show();
}
public void alertDataVazia(){
Alert alertDVazia = new Alert(Alert.AlertType.ERROR);
alertDVazia.setTitle("Painel de Controle - Erro 02");
alertDVazia.setHeaderText("Data de nascimento não informada");
alertDVazia.setContentText("O processo não foi concluído pois o campo da data de nascimento está vazio. Preencha-o!");
alertDVazia.show();
}
public void alertTelefoneVazio(){
Alert alertTVazio = new Alert(Alert.AlertType.ERROR);
alertTVazio.setTitle("Painel de Controle - Erro 03");
alertTVazio.setHeaderText("Telefone não informado");
alertTVazio.setContentText("O processo não foi concluído pois o campo do telefone está vazio. Preencha-o!");
alertTVazio.show();
}
public void alertEmailVazio(){
Alert alertEVazio = new Alert(Alert.AlertType.ERROR);
alertEVazio.setTitle("Painel de Controle - Erro 04");
alertEVazio.setHeaderText("Email não informado");
alertEVazio.setContentText("O processo não foi concluído pois o campo do email está vazio. Preencha-o!");
alertEVazio.show();
}
}
Convidados.java:
package encontrotesla;
public class Convidados {
private String nome;
private String data;
private String telefone;
private String email;
public Convidados(String nome, String data, String telefone, String email) {
this.nome = nome;
this.data = data;
this.telefone = telefone;
this.email = email;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getData() {
return data;
}
public void setData(String data) {
this.data = data;
}
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public String toString() {
return getNome() + " : " + getTelefone();
}
}