Advertisement
Guest User

Untitled

a guest
May 25th, 2016
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 18.25 KB | None | 0 0
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package visao;
  7.  
  8. import java.util.ArrayList;
  9. import javax.swing.table.DefaultTableModel;
  10. import modelo.ListaProprietario;
  11.  
  12. /**
  13.  *
  14.  * @author Professor
  15.  */
  16. public class TelaProprietario extends javax.swing.JFrame {
  17.  
  18.     private ListaProprietario lista = new ListaProprietario();
  19.     private ControleBotao cb = new ControleBotao();
  20.     private int linha = -1;
  21.  
  22.     /**
  23.      * Creates new form TelaProprietario
  24.      */
  25.     public TelaProprietario() {
  26.         initComponents();
  27.         this.setResizable(false);
  28.         this.setLocationRelativeTo(null);
  29.         cb.adicionarBotao(btnovo);
  30.         cb.adicionarBotao(btalterar);
  31.         cb.adicionarBotao(btremover);
  32.         cb.adicionarBotao(btconfirmar);
  33.         cb.adicionarBotao(btcancelar);
  34.         cb.adicionarCampo(edcpfcnpj);
  35.         cb.adicionarCampo(ednome);
  36.         cb.adicionarCampo(edemail);
  37.         cb.adicionarCampo(edfone);
  38.         cb.habilitar("I");
  39.         cb.setOpcao('D');
  40.         cb.habilitarCampos();
  41.     }
  42.  
  43.     public void cadastrarProprietario() {
  44.         lista.cadastrarProprietario(ednome.getText(),
  45.                 edcpfcnpj.getText(),
  46.                 edfone.getText(),
  47.                 edemail.getText());
  48.         listarProprietario();
  49.         limparCampos();
  50.     }
  51.  
  52.     public void listarProprietario() {
  53.         DefaultTableModel modelo
  54.                 = (DefaultTableModel) tabelaProprietario.getModel();
  55.         modelo.setRowCount(0);
  56.         modelo.setColumnCount(4);
  57.         ArrayList<Object> dados = lista.gerarLinhaTabela();
  58.         if (!dados.isEmpty()) {
  59.             for (Object obj : dados) {
  60.                 String[] linha = (String[]) obj;
  61.                 modelo.addRow(linha);
  62.             }
  63.         }
  64.         tabelaProprietario.setModel(modelo);
  65.     }
  66.  
  67.     public void limparCampos() {
  68.         ednome.setText("");
  69.         edcpfcnpj.setText("");
  70.         edemail.setText("");
  71.         edfone.setText("");
  72.         edcpfcnpj.requestFocus();
  73.     }
  74.  
  75.     public void selecionarItemTabela() {
  76.         linha = tabelaProprietario.getSelectedRow();
  77.         ednome.setText(tabelaProprietario.getValueAt(linha, 1).toString());
  78.         edcpfcnpj.setText(tabelaProprietario.getValueAt(linha, 0).toString());
  79.         edemail.setText(tabelaProprietario.getValueAt(linha, 2).toString());
  80.         edfone.setText(tabelaProprietario.getValueAt(linha, 3).toString());
  81.     }
  82.  
  83.     public void removerProprietario() {
  84.         String chave = edcpfcnpj.getText();
  85.         lista.removerProprietario(chave);
  86.         listarProprietario();
  87.         limparCampos();
  88.     }
  89.  
  90.     public void alterarProprietario() {
  91.         lista.alterarProprietario(ednome.getText(),
  92.                 edcpfcnpj.getText(),
  93.                 edfone.getText(),
  94.                 edemail.getText());
  95.         listarProprietario();
  96.  
  97.     }
  98.  
  99.     @SuppressWarnings("unchecked")
  100.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
  101.     private void initComponents() {
  102.  
  103.         jLabel1 = new javax.swing.JLabel();
  104.         jLabel2 = new javax.swing.JLabel();
  105.         jLabel3 = new javax.swing.JLabel();
  106.         jLabel4 = new javax.swing.JLabel();
  107.         ednome = new javax.swing.JTextField();
  108.         edcpfcnpj = new javax.swing.JTextField();
  109.         edfone = new javax.swing.JTextField();
  110.         edemail = new javax.swing.JTextField();
  111.         btalterar = new javax.swing.JButton();
  112.         btremover = new javax.swing.JButton();
  113.         btnovo = new javax.swing.JButton();
  114.         btconfirmar = new javax.swing.JButton();
  115.         btcancelar = new javax.swing.JButton();
  116.         btveiculos = new javax.swing.JButton();
  117.         jScrollPane1 = new javax.swing.JScrollPane();
  118.         tabelaProprietario = new javax.swing.JTable();
  119.  
  120.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  121.         setTitle("Cadastro de Proprietário");
  122.  
  123.         jLabel1.setText("Nome:");
  124.  
  125.         jLabel2.setText("CPFCNPJ:");
  126.  
  127.         jLabel3.setText("E-mail:");
  128.  
  129.         jLabel4.setText("Telefone:");
  130.  
  131.         ednome.addActionListener(new java.awt.event.ActionListener() {
  132.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  133.                 ednomeActionPerformed(evt);
  134.             }
  135.         });
  136.  
  137.         edcpfcnpj.addActionListener(new java.awt.event.ActionListener() {
  138.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  139.                 edcpfcnpjActionPerformed(evt);
  140.             }
  141.         });
  142.  
  143.         btalterar.setText("Alterar");
  144.         btalterar.addActionListener(new java.awt.event.ActionListener() {
  145.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  146.                 btalterarActionPerformed(evt);
  147.             }
  148.         });
  149.  
  150.         btremover.setText("Remover");
  151.         btremover.addActionListener(new java.awt.event.ActionListener() {
  152.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  153.                 btremoverActionPerformed(evt);
  154.             }
  155.         });
  156.  
  157.         btnovo.setText("Novo");
  158.         btnovo.addActionListener(new java.awt.event.ActionListener() {
  159.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  160.                 btnovoActionPerformed(evt);
  161.             }
  162.         });
  163.  
  164.         btconfirmar.setText("Confirmar");
  165.         btconfirmar.addActionListener(new java.awt.event.ActionListener() {
  166.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  167.                 btconfirmarActionPerformed(evt);
  168.             }
  169.         });
  170.  
  171.         btcancelar.setText("Cancelar");
  172.         btcancelar.addActionListener(new java.awt.event.ActionListener() {
  173.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  174.                 btcancelarActionPerformed(evt);
  175.             }
  176.         });
  177.  
  178.         btveiculos.setText("Veículos");
  179.  
  180.         tabelaProprietario.setModel(new javax.swing.table.DefaultTableModel(
  181.             new Object [][] {
  182.  
  183.             },
  184.             new String [] {
  185.                 "CPFCNPJ", "Nome", "E-mail", "Telefone"
  186.             }
  187.         ) {
  188.             boolean[] canEdit = new boolean [] {
  189.                 false, false, false, false
  190.             };
  191.  
  192.             public boolean isCellEditable(int rowIndex, int columnIndex) {
  193.                 return canEdit [columnIndex];
  194.             }
  195.         });
  196.         tabelaProprietario.addMouseListener(new java.awt.event.MouseAdapter() {
  197.             public void mouseClicked(java.awt.event.MouseEvent evt) {
  198.                 tabelaProprietarioMouseClicked(evt);
  199.             }
  200.         });
  201.         jScrollPane1.setViewportView(tabelaProprietario);
  202.  
  203.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  204.         getContentPane().setLayout(layout);
  205.         layout.setHorizontalGroup(
  206.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  207.             .addGroup(layout.createSequentialGroup()
  208.                 .addGap(10, 10, 10)
  209.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  210.                     .addComponent(jLabel2)
  211.                     .addComponent(edcpfcnpj, javax.swing.GroupLayout.PREFERRED_SIZE, 129, javax.swing.GroupLayout.PREFERRED_SIZE))
  212.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  213.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  214.                     .addComponent(jLabel1)
  215.                     .addComponent(ednome, javax.swing.GroupLayout.PREFERRED_SIZE, 368, javax.swing.GroupLayout.PREFERRED_SIZE))
  216.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  217.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  218.                     .addComponent(edemail, javax.swing.GroupLayout.PREFERRED_SIZE, 204, javax.swing.GroupLayout.PREFERRED_SIZE)
  219.                     .addComponent(jLabel3))
  220.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  221.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  222.                     .addComponent(jLabel4)
  223.                     .addComponent(edfone, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE))
  224.                 .addGap(0, 0, Short.MAX_VALUE))
  225.             .addGroup(layout.createSequentialGroup()
  226.                 .addContainerGap()
  227.                 .addComponent(btnovo, javax.swing.GroupLayout.PREFERRED_SIZE, 88, javax.swing.GroupLayout.PREFERRED_SIZE)
  228.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  229.                 .addComponent(btalterar, javax.swing.GroupLayout.PREFERRED_SIZE, 88, javax.swing.GroupLayout.PREFERRED_SIZE)
  230.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  231.                 .addComponent(btremover, javax.swing.GroupLayout.PREFERRED_SIZE, 119, javax.swing.GroupLayout.PREFERRED_SIZE)
  232.                 .addGap(18, 18, 18)
  233.                 .addComponent(btconfirmar, javax.swing.GroupLayout.PREFERRED_SIZE, 135, javax.swing.GroupLayout.PREFERRED_SIZE)
  234.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  235.                 .addComponent(btcancelar, javax.swing.GroupLayout.PREFERRED_SIZE, 135, javax.swing.GroupLayout.PREFERRED_SIZE)
  236.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  237.                 .addComponent(btveiculos, javax.swing.GroupLayout.PREFERRED_SIZE, 135, javax.swing.GroupLayout.PREFERRED_SIZE))
  238.             .addComponent(jScrollPane1)
  239.         );
  240.         layout.setVerticalGroup(
  241.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  242.             .addGroup(layout.createSequentialGroup()
  243.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  244.                     .addGroup(layout.createSequentialGroup()
  245.                         .addGap(16, 16, 16)
  246.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  247.                             .addComponent(jLabel1)
  248.                             .addComponent(jLabel2)))
  249.                     .addGroup(layout.createSequentialGroup()
  250.                         .addGap(16, 16, 16)
  251.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  252.                             .addComponent(jLabel4)
  253.                             .addComponent(jLabel3)))
  254.                     .addGroup(layout.createSequentialGroup()
  255.                         .addGap(36, 36, 36)
  256.                         .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  257.                             .addComponent(ednome, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  258.                             .addComponent(edcpfcnpj, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  259.                             .addComponent(edemail, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  260.                             .addComponent(edfone, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
  261.                 .addGap(18, 18, 18)
  262.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  263.                     .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  264.                         .addComponent(btalterar)
  265.                         .addComponent(btremover)
  266.                         .addComponent(btnovo)
  267.                         .addComponent(btconfirmar)
  268.                         .addComponent(btcancelar))
  269.                     .addComponent(btveiculos))
  270.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  271.                 .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  272.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  273.         );
  274.  
  275.         pack();
  276.     }// </editor-fold>                        
  277.  
  278.     private void edcpfcnpjActionPerformed(java.awt.event.ActionEvent evt) {                                          
  279.         // TODO add your handling code here:
  280.     }                                        
  281.  
  282.     private void ednomeActionPerformed(java.awt.event.ActionEvent evt) {                                      
  283.         // TODO add your handling code here:
  284.     }                                      
  285.  
  286.     private void btnovoActionPerformed(java.awt.event.ActionEvent evt) {                                      
  287.         // TODO add your handling code here:
  288.         cb.setOpcao('I');
  289.         cb.habilitarCampos();
  290.         cb.limparCampos();
  291.         cb.habilitar("PC");
  292.     }                                      
  293.  
  294.     private void tabelaProprietarioMouseClicked(java.awt.event.MouseEvent evt) {                                                
  295.         // TODO add your handling code here:
  296.         selecionarItemTabela();
  297.     }                                              
  298.  
  299.     private void btremoverActionPerformed(java.awt.event.ActionEvent evt) {                                          
  300.         // TODO add your handling code here:
  301.         cb.setOpcao('D');
  302.         cb.habilitarCampos();
  303.         cb.habilitar("PC");
  304.     }                                        
  305.  
  306.     private void btalterarActionPerformed(java.awt.event.ActionEvent evt) {                                          
  307.         // TODO add your handling code here:
  308.         cb.setOpcao('U');
  309.         cb.habilitarCampos();
  310.         cb.habilitar("PC");
  311.     }                                        
  312.  
  313.     private void btconfirmarActionPerformed(java.awt.event.ActionEvent evt) {                                            
  314.         // TODO add your handling code here:
  315.         if (cb.getOpcao() == 'I') {
  316.             cadastrarProprietario();
  317.             cb.setOpcao('D'); //desligar os campos
  318.             cb.habilitarCampos();
  319.             cb.setQtderegistros(tabelaProprietario.getRowCount());
  320.             cb.habilitar("IUD");//habilitar
  321.             return; //sai do método            
  322.         }
  323.         if (cb.getOpcao() == 'D') {
  324.             removerProprietario();
  325.             cb.setOpcao('D');
  326.             cb.habilitarCampos();
  327.             cb.setQtderegistros(tabelaProprietario.getRowCount());
  328.             cb.habilitar("IUD");//habilitar
  329.             return; //sai do método            
  330.         }
  331.         if (cb.getOpcao() == 'U') {
  332.             alterarProprietario();
  333.             cb.setOpcao('D');
  334.             cb.habilitarCampos();
  335.             cb.setQtderegistros(tabelaProprietario.getRowCount());
  336.             cb.habilitar("IUD");//habilitar
  337.             return; //sai do método            
  338.         }
  339.     }                                          
  340.  
  341.     private void btcancelarActionPerformed(java.awt.event.ActionEvent evt) {                                          
  342.         // TODO add your handling code here:
  343.         if(linha != -1){
  344.             selecionarItemTabela();
  345.             linha = -1;
  346.         }else{
  347.             cb.limparCampos();
  348.         }
  349.         cb.habilitar("IUD");
  350.         cb.setOpcao('D');
  351.         cb.habilitarCampos();
  352.        
  353.     }                                          
  354.  
  355.     /**
  356.      * @param args the command line arguments
  357.      */
  358.     public static void main(String args[]) {
  359.         /* Set the Nimbus look and feel */
  360.         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
  361.         /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
  362.          * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
  363.          */
  364.         try {
  365.             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  366.                 if ("Nimbus".equals(info.getName())) {
  367.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());
  368.                     break;
  369.                 }
  370.             }
  371.         } catch (ClassNotFoundException ex) {
  372.             java.util.logging.Logger.getLogger(TelaProprietario.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  373.         } catch (InstantiationException ex) {
  374.             java.util.logging.Logger.getLogger(TelaProprietario.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  375.         } catch (IllegalAccessException ex) {
  376.             java.util.logging.Logger.getLogger(TelaProprietario.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  377.         } catch (javax.swing.UnsupportedLookAndFeelException ex) {
  378.             java.util.logging.Logger.getLogger(TelaProprietario.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  379.         }
  380.         //</editor-fold>
  381.  
  382.         /* Create and display the form */
  383.         java.awt.EventQueue.invokeLater(new Runnable() {
  384.             public void run() {
  385.                 new TelaProprietario().setVisible(true);
  386.             }
  387.         });
  388.     }
  389.  
  390.     // Variables declaration - do not modify                    
  391.     private javax.swing.JButton btalterar;
  392.     private javax.swing.JButton btcancelar;
  393.     private javax.swing.JButton btconfirmar;
  394.     private javax.swing.JButton btnovo;
  395.     private javax.swing.JButton btremover;
  396.     private javax.swing.JButton btveiculos;
  397.     private javax.swing.JTextField edcpfcnpj;
  398.     private javax.swing.JTextField edemail;
  399.     private javax.swing.JTextField edfone;
  400.     private javax.swing.JTextField ednome;
  401.     private javax.swing.JLabel jLabel1;
  402.     private javax.swing.JLabel jLabel2;
  403.     private javax.swing.JLabel jLabel3;
  404.     private javax.swing.JLabel jLabel4;
  405.     private javax.swing.JScrollPane jScrollPane1;
  406.     private javax.swing.JTable tabelaProprietario;
  407.     // End of variables declaration                  
  408. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement