6 de setembro de 2011

FormularioSimplesGui.java (Versao 1.0)


Exemplo de 1 GUI de 1 formulário, feito na aula de Fundamentos de Programação 2...






// import dos pacotes


import javax.swing.*;
import java.awt.*;
import java.awt.event.*;


public class FormularioGUI extends JFrame{

// atributos da class


private JLabel lblNome, lblSobrenome, lblTelefone, lblEmail, lblData,lblCidade, lblSexo;
private JTextField jtfNome,jtfSobrenome,jtfTelefone, jtfEmail, jtfData, jtfCidade;
private JRadioButton rbSexoM, rbSexoF;
private JButton jbGuardar, jbCancelar, jbVisualizar,jbLimpar;


/*criando um objecto da Class Formulario, class essa onde contem os metodos set's e get's, bem como o toString(), e os seus construtores (DEFAULT, E CANONICO) */


private Formulario formulario = new Formulario();


// criando um objecto, ou instanciando a class interna, TrataEventos.
private TrataEventos ev = new TrataEventos();


 // construtor Default da Class FormularioGUI
  public FormularioGUI(){
   
 // criando as JLabel's
  lblNome = new JLabel("Nome") ;
  lblSobrenome = new JLabel("Sobrenome") ;
  lblTelefone = new JLabel("Telefone") ;
  lblEmail = new JLabel("Email") ;
  lblData = new JLabel("Data Actual") ;
  lblCidade = new JLabel("Cidade");
  lblSexo = new JLabel("Sexo");

 // criando as JTextFiedl
  jtfNome = new JTextField(15);
  jtfSobrenome = new JTextField(15);
  jtfTelefone = new JTextField(15);
  jtfEmail = new JTextField(15);
  jtfData = new JTextField(15);
  jtfData.setEditable(false);
  jtfCidade = new JTextField(15);

  // criando os JRadioButton


  rbSexoM = new JRadioButton("Masculino");
  rbSexoM.setBackground(Color.yellow);
  rbSexoF = new JRadioButton("Feminino");
  rbSexoF.setBackground(Color.yellow);

 // Criando os JButton


  jbGuardar = new JButton("Guardar");
  jbGuardar.setBackground(Color.green);
  jbGuardar.addActionListener(ev);

  jbVisualizar = new JButton("Visualizar");
  jbVisualizar.setBackground(Color.green);
  jbVisualizar.addActionListener(ev);

  jbLimpar = new JButton("Limpar");
  jbLimpar.setBackground(Color.green);
  jbLimpar.addActionListener(ev);

  jbCancelar = new JButton("Cancelar");
  jbCancelar.setBackground(Color.green);
  jbCancelar.addActionListener(ev);

  criaGui();

  }
 // metodo onde contem os metodos da JFrame (Janela)
 public void criaGui(){
    // Dando um titulo a janela
   setTitle("Formulario de Inscricao");
  // definindo o tamanho
  setSize(222,415);
  // impedindo que a janela seja redimensionada
  setResizable(false);
  // para a janela abrir no centro do ecra
  setLocationRelativeTo(null);
 // para terminar a aplicacao quando fechar a janela
  setDefaultCloseOperation(EXIT_ON_CLOSE);
   // onde vamos inserir os elementos
  Container contentor = getContentPane();
 // mudando a cor do fundo
  contentor.setBackground(Color.yellow);
//  criando um arrumador
  contentor.setLayout(new FlowLayout());
 //adicionando os elementos no Container
  contentor.add(lblNome);
  contentor.add(jtfNome);

  contentor.add(lblSobrenome);
  contentor.add(jtfSobrenome);

  contentor.add(lblTelefone);
  contentor.add(jtfTelefone);

  contentor.add(lblEmail);
  contentor.add(jtfEmail);

  contentor.add(lblData);
  contentor.add(jtfData);

  contentor.add(lblCidade);
  contentor.add(jtfCidade);

  contentor.add(lblSexo);
  contentor.add(rbSexoM);
  contentor.add(rbSexoF);

  contentor.add(jbGuardar);

  contentor.add(jbVisualizar);
 // tornando o botão visível, mas inactivo
  jbVisualizar.setEnabled(false);

  contentor.add(jbLimpar);
  contentor.add(jbCancelar);
  // atribuindo uma String para a JTextField Data
  jtfData.setText("06/09/2011");
  // tornando visível a janela
  setVisible(true);

  }
// método que verifica se todos os campos estão preenchidos
public boolean ValidarCampos(){

  boolean validou = true;
 // verifica se o campo nome esta vazio
  if(jtfNome.getText().equals("")){
   validou = false;
   JOptionPane.showMessageDialog(null, "INSIRA O NOME"," ERRO NO NOME" , JOptionPane.ERROR_MESSAGE );
   lblNome.setText("*Nome");
   lblNome.setForeground(Color.red);
  }
  else{
   lblNome.setText("Nome");
   lblNome.setForeground(Color.black);
  }
  if(jtfSobrenome.getText().equals("")){
   validou = false;
   JOptionPane.showMessageDialog(null, "INSIRA O SOBRENOME"," ERRO NO SOBRENOME" , JOptionPane.ERROR_MESSAGE );
   lblSobrenome.setText("*Sobrenome");
   lblSobrenome.setForeground(Color.red);
  }
  else{
   lblSobrenome.setText("Sobrenome");
   lblSobrenome.setForeground(Color.black);
  }

  if(jtfTelefone.getText().equals("")){
   validou = false;
   JOptionPane.showMessageDialog(null, "INSIRA O TELEFONE"," ERRO NO TELEFONE" , JOptionPane.ERROR_MESSAGE );
   lblTelefone.setText("*Telefone");
   lblTelefone.setForeground(Color.red);
  }
  else{
   lblTelefone.setText("Telefone");
   lblTelefone.setForeground(Color.black);
  }

  if(jtfEmail.getText().equals("")){
   validou = false;
   JOptionPane.showMessageDialog(null, "INSIRA O EMAIL"," ERRO NO EMAIL" , JOptionPane.ERROR_MESSAGE );
   lblEmail.setText("*Email");
   lblEmail.setForeground(Color.red);
  }
  else{
   lblEmail.setText("Email");
   lblEmail.setForeground(Color.black);
  }

  if(jtfCidade.getText().equals("")){
   validou = false;
   JOptionPane.showMessageDialog(null, "INSIRA A CIDADE"," ERRO NA CIDADE" , JOptionPane.ERROR_MESSAGE );
   lblCidade.setText("*Cidade");
   lblCidade.setForeground(Color.red);
  }
  else{
   lblCidade.setText("Cidade");
   lblCidade.setForeground(Color.black);
  }


  return validou;
}
// class que trata dos eventos 
private class TrataEventos implements ActionListener
{
  public void actionPerformed(ActionEvent evento)
  {
   
    if(evento.getSource() == jbGuardar )
    {
     if(ValidarCampos() == true){
     
     JOptionPane.showMessageDialog(null, "DADOS GUARDADOS COM SUCESSO !!!...");
     jbVisualizar.setEnabled(true);
   
    formulario.setNome(jtfNome.getText());
    formulario.setSobreNome(jtfSobrenome.getText());
    formulario.setTelefone(jtfTelefone.getText());
    formulario.setEmail(jtfEmail.getText());
    formulario.setCidade(jtfCidade.getText());
    //formulario.setSexo()
    }
    }
     
    if (evento.getSource() == jbVisualizar ){
     
      JOptionPane.showMessageDialog(null,"Nome: "+formulario.getNome()+"\n"+"Sobrenome: "+formulario.getSobreNome()+"\n"+"Telefone: "+formulario.getTelefone()
                                   +"\n"+"Email: "+formulario.getEmail()+"\n"+"Cidade: "+formulario.getCidade()+"\n"+"Sexo: "+rbSexoM.getText());
    }
    if (evento.getSource() == jbCancelar ){
    dispose();
    }
   
    if (evento.getSource() == jbLimpar ){
   
    jbVisualizar.setEnabled(false);
     
    jtfNome.setText("");
    jtfSobrenome.setText("");
    jtfTelefone.setText("");
    jtfEmail.setText("");
    jtfCidade.setText("");
 
    formulario.setNome("");
    formulario.setSobreNome("");
    formulario.setTelefone("");
    formulario.setEmail("");
    formulario.setCidade("");
    }
   
  }
}
}