/* * To change this template, choose Tools | Templates * and open the template in the editor. */ /* * jTAgendaContatos.java * * Created on 03/01/2010, 16:23:09 */ package junior.forms; import java.sql.SQLException; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JOptionPane; import javax.swing.ListSelectionModel; import javax.swing.table.DefaultTableModel; import junior.dao.ContatoDao; import junior.logica.Contato; /** * * @author junior */ public class jTAgendaContatos extends javax.swing.JFrame { DefaultTableModel tmContato = new DefaultTableModel(null, new String[]{"Id", "Nome", "Endereco"}); List contatos; ListSelectionModel lsmContato; /** Creates new form jTAgendaContatos */ public jTAgendaContatos() { initComponents(); desabilitaDados(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // private void initComponents() { jPanel1 = new javax.swing.JPanel(); jLId = new javax.swing.JLabel(); jLNome = new javax.swing.JLabel(); jLEndereco = new javax.swing.JLabel(); jLTelefone = new javax.swing.JLabel(); jLEmail = new javax.swing.JLabel(); jLSexo = new javax.swing.JLabel(); jTId = new javax.swing.JTextField(); jTNome = new javax.swing.JTextField(); jTEndereco = new javax.swing.JTextField(); jTTelefone = new javax.swing.JTextField(); jTEmail = new javax.swing.JTextField(); jTSexo = new javax.swing.JTextField(); jBPesquisa = new javax.swing.JButton(); jTPesquisar = new javax.swing.JTextField(); jScrollPane1 = new javax.swing.JScrollPane(); jTable1 = new javax.swing.JTable(); jPanel2 = new javax.swing.JPanel(); jPanel3 = new javax.swing.JPanel(); jBSair = new javax.swing.JButton(); jBNovo = new javax.swing.JButton(); jBAlterar = new javax.swing.JButton(); jBExcluir = new javax.swing.JButton(); jBSalvar = new javax.swing.JButton(); jMenuBar1 = new javax.swing.JMenuBar(); jMenu1 = new javax.swing.JMenu(); jMAlterar = new javax.swing.JMenuItem(); jMExcluir = new javax.swing.JMenuItem(); jMSalvar = new javax.swing.JMenuItem(); jMSair = new javax.swing.JMenuItem(); jMenuItem8 = new javax.swing.JMenuItem(); jMenu2 = new javax.swing.JMenu(); jMenu3 = new javax.swing.JMenu(); jMAjuda = new javax.swing.JMenu(); jMFalha = new javax.swing.JMenuItem(); jMCreditos = new javax.swing.JMenuItem(); jMenuItem4 = new javax.swing.JMenuItem(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); setTitle("Sisteminha :)"); jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Dados do contato")); jLId.setText("ID:"); jLNome.setText("Nome:"); jLEndereco.setText("Endereço:"); jLTelefone.setText("Telefone:"); jLEmail.setText("E-mail:"); jLSexo.setText("Sexo:"); javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jLNome, javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLId, javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup() .addComponent(jLEndereco) .addGap(12, 12, 12) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jTEndereco, javax.swing.GroupLayout.DEFAULT_SIZE, 291, Short.MAX_VALUE) .addComponent(jTId, javax.swing.GroupLayout.PREFERRED_SIZE, 89, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTNome, javax.swing.GroupLayout.PREFERRED_SIZE, 273, javax.swing.GroupLayout.PREFERRED_SIZE)))) .addGap(18, 18, 18) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLSexo) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLTelefone) .addComponent(jLEmail)) .addGap(12, 12, 12) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jTTelefone, javax.swing.GroupLayout.DEFAULT_SIZE, 291, Short.MAX_VALUE) .addComponent(jTSexo, javax.swing.GroupLayout.PREFERRED_SIZE, 48, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jTEmail, javax.swing.GroupLayout.DEFAULT_SIZE, 291, Short.MAX_VALUE)))) .addGap(31, 31, 31)) ); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLId) .addComponent(jTId, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLNome) .addComponent(jTNome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLEndereco) .addComponent(jTEndereco, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGroup(jPanel1Layout.createSequentialGroup() .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLTelefone) .addComponent(jTTelefone, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLEmail) .addComponent(jTEmail, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLSexo) .addComponent(jTSexo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))) .addContainerGap(44, Short.MAX_VALUE)) ); jBPesquisa.setText("Pesquisar"); jBPesquisa.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jBPesquisaActionPerformed(evt); } }); jTable1.setModel(tmContato); jScrollPane1.setViewportView(jTable1); javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); jPanel2.setLayout(jPanel2Layout); jPanel2Layout.setHorizontalGroup( jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 206, Short.MAX_VALUE) ); jPanel2Layout.setVerticalGroup( jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 1, Short.MAX_VALUE) ); jBSair.setText("SAIR"); jBSair.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jBSairActionPerformed(evt); } }); jBNovo.setText("NOVO"); jBNovo.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jBNovoActionPerformed(evt); } }); jBAlterar.setText("ALTERAR"); jBExcluir.setText("EXCLUIR"); jBSalvar.setText("SALVAR"); jBSalvar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jBSalvarActionPerformed(evt); } }); javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); jPanel3.setLayout(jPanel3Layout); jPanel3Layout.setHorizontalGroup( jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup() .addGap(200, 200, 200) .addComponent(jBNovo) .addGap(18, 18, 18) .addComponent(jBAlterar) .addGap(18, 18, 18) .addComponent(jBExcluir) .addGap(18, 18, 18) .addComponent(jBSalvar) .addGap(18, 18, 18) .addComponent(jBSair) .addContainerGap(29, Short.MAX_VALUE)) ); jPanel3Layout.setVerticalGroup( jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jBSair) .addComponent(jBNovo) .addComponent(jBAlterar) .addComponent(jBExcluir) .addComponent(jBSalvar)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); jMenu1.setText("Arquivo"); jMenu1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jMenu1ActionPerformed(evt); } }); jMAlterar.setText("Novo"); jMAlterar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jMAlterarActionPerformed(evt); } }); jMenu1.add(jMAlterar); jMExcluir.setText("Alterar"); jMenu1.add(jMExcluir); jMSalvar.setText("Excluir"); jMenu1.add(jMSalvar); jMSair.setText("Salvar"); jMenu1.add(jMSair); jMenuItem8.setText("Sair"); jMenu1.add(jMenuItem8); jMenuBar1.add(jMenu1); jMenu2.setText("Editar"); jMenuBar1.add(jMenu2); jMenu3.setText("Ferramentas"); jMenuBar1.add(jMenu3); jMAjuda.setText("Ajuda"); jMFalha.setText("Tópicos de ajuda"); jMAjuda.add(jMFalha); jMCreditos.setText("Reportar falha"); jMAjuda.add(jMCreditos); jMenuItem4.setText("Créditos"); jMAjuda.add(jMenuItem4); jMenuBar1.add(jMAjuda); setJMenuBar(jMenuBar1); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(layout.createSequentialGroup() .addGap(595, 595, 595) .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 801, Short.MAX_VALUE) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addComponent(jTPesquisar, javax.swing.GroupLayout.DEFAULT_SIZE, 715, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jBPesquisa)))) .addGroup(layout.createSequentialGroup() .addGap(37, 37, 37) .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) .addContainerGap()) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addContainerGap() .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(57, 57, 57) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jBPesquisa) .addComponent(jTPesquisar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 14, Short.MAX_VALUE) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 279, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(22, 22, 22)) ); pack(); }// private void jBNovoActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: habilitaDados(); jTNome.setText(""); jTEmail.setText(""); jTEndereco.setText(""); jTSexo.setText(""); jTTelefone.setText(""); } private void jMAlterarActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTNome.setText(""); jTEmail.setText(""); jTEndereco.setText(""); jTSexo.setText(""); jTTelefone.setText(""); } public void desabilitaDados() { jTId.setEditable(false); jTNome.setEditable(false); jTEndereco.setEditable(false); jTEmail.setEditable(false); jTSexo.setEditable(false); jTTelefone.setEditable(false); } public void habilitaDados() { jTNome.setEditable(true); jTEndereco.setEditable(true); jTEmail.setEditable(true); jTSexo.setEditable(true); jTTelefone.setEditable(true); } public boolean verificaDados() { if (!jTNome.getText().equals("") && !jTEndereco.getText().equals("")) { //Campos obrigatórios return true; } else { JOptionPane.showMessageDialog(null, "Campos NOME ou ENDEREÇO não preenchidos!"); return false; } } private void jBSalvarActionPerformed(java.awt.event.ActionEvent evt) { if (verificaDados()) { cadastro(); desabilitaDados(); } } public void listarContatos() throws SQLException { ContatoDao dao = new ContatoDao(); contatos = dao.getLista("%" + jTPesquisar.getText() + "%"); mostraPesquisa(contatos); } public void cadastro() { try { // TODO add your handling code here: Contato c1 = new Contato(); c1.setNome(jTNome.getText()); c1.setTel(jTTelefone.getText()); c1.setEndereco(jTEndereco.getText()); c1.setEmail(jTEmail.getText()); c1.setSexo(jTSexo.getText()); ContatoDao dao = new ContatoDao(); dao.adiociona(c1); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Oops!Houve problemas... "); } } private void jMenu1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: } private void jBPesquisaActionPerformed(java.awt.event.ActionEvent evt) { try { // TODO add your handling code here: listarContatos(); } catch (SQLException ex) { JOptionPane.showMessageDialog(null, "Houve problemas no campo de pesquisa!"); } } private void jBSairActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: System.exit(0); } /** * @param args the command line arguments */ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new jTAgendaContatos().setVisible(true); } }); } // Variables declaration - do not modify private javax.swing.JButton jBAlterar; private javax.swing.JButton jBExcluir; private javax.swing.JButton jBNovo; private javax.swing.JButton jBPesquisa; private javax.swing.JButton jBSair; private javax.swing.JButton jBSalvar; private javax.swing.JLabel jLEmail; private javax.swing.JLabel jLEndereco; private javax.swing.JLabel jLId; private javax.swing.JLabel jLNome; private javax.swing.JLabel jLSexo; private javax.swing.JLabel jLTelefone; private javax.swing.JMenu jMAjuda; private javax.swing.JMenuItem jMAlterar; private javax.swing.JMenuItem jMCreditos; private javax.swing.JMenuItem jMExcluir; private javax.swing.JMenuItem jMFalha; private javax.swing.JMenuItem jMSair; private javax.swing.JMenuItem jMSalvar; private javax.swing.JMenu jMenu1; private javax.swing.JMenu jMenu2; private javax.swing.JMenu jMenu3; private javax.swing.JMenuBar jMenuBar1; private javax.swing.JMenuItem jMenuItem4; private javax.swing.JMenuItem jMenuItem8; private javax.swing.JPanel jPanel1; private javax.swing.JPanel jPanel2; private javax.swing.JPanel jPanel3; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTextField jTEmail; private javax.swing.JTextField jTEndereco; private javax.swing.JTextField jTId; private javax.swing.JTextField jTNome; private javax.swing.JTextField jTPesquisar; private javax.swing.JTextField jTSexo; private javax.swing.JTextField jTTelefone; private javax.swing.JTable jTable1; // End of variables declaration private void mostraPesquisa(List contatos) { if (contatos.size() == 0) { JOptionPane.showMessageDialog(null, "Nenhum contato cadastrado!" ); } else { String[] linha = new String []{null, null, null, null}; for (int i = 0; i < contatos.size(); i++) { tmContato.addRow(linha); tmContato.setValueAt(contatos.get(i).getId(), i, 0); tmContato.setValueAt(contatos.get(i).getNome(), i, 1); tmContato.setValueAt(contatos.get(i).getEndereco(), i, 2); tmContato.setValueAt(contatos.get(i).getTel(), i, 3); } } } }