Advertisement
LightProgrammer000

Eleitor

Jun 18th, 2023
1,131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 17.07 KB | None | 0 0
  1. package eleitor;
  2.  
  3. // Bibliotecas
  4. import java.awt.Color;
  5. import java.util.Calendar;
  6. import java.util.GregorianCalendar;
  7. import javax.swing.JOptionPane;
  8.  
  9. public class eleitor extends javax.swing.JFrame
  10. {
  11.     // Instanciação
  12.     Calendar cal = GregorianCalendar.getInstance();
  13.  
  14.     // Construtor
  15.     public eleitor()
  16.     {
  17.         initComponents();
  18.         config();
  19.     }
  20.  
  21.     @SuppressWarnings("unchecked")
  22.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
  23.     private void initComponents() {
  24.  
  25.         jLabel1 = new javax.swing.JLabel();
  26.         btnCal = new javax.swing.JButton();
  27.         pan1 = new javax.swing.JPanel();
  28.         jLabel2 = new javax.swing.JLabel();
  29.         jLabel4 = new javax.swing.JLabel();
  30.         txtAnoAtu = new javax.swing.JTextField();
  31.         txtAnoNas = new javax.swing.JFormattedTextField();
  32.         pan2 = new javax.swing.JPanel();
  33.         jLabel3 = new javax.swing.JLabel();
  34.         jLabel5 = new javax.swing.JLabel();
  35.         jLabel6 = new javax.swing.JLabel();
  36.         jLabel7 = new javax.swing.JLabel();
  37.         jLabel8 = new javax.swing.JLabel();
  38.         txtIda = new javax.swing.JTextField();
  39.         txtSem = new javax.swing.JTextField();
  40.         txtHor = new javax.swing.JTextField();
  41.         txtSeg = new javax.swing.JTextField();
  42.         txtSitEle = new javax.swing.JTextField();
  43.  
  44.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  45.         setTitle("Perfil");
  46.         setResizable(false);
  47.  
  48.         jLabel1.setFont(new java.awt.Font("Monotype Corsiva", 0, 36)); // NOI18N
  49.         jLabel1.setForeground(new java.awt.Color(0, 153, 153));
  50.         jLabel1.setText("PERFIL");
  51.  
  52.         btnCal.setFont(new java.awt.Font("Bauhaus 93", 1, 14)); // NOI18N
  53.         btnCal.setText("Calcular");
  54.         btnCal.addActionListener(new java.awt.event.ActionListener() {
  55.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  56.                 btnCalActionPerformed(evt);
  57.             }
  58.         });
  59.  
  60.         pan1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Dados", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 0, 14), new java.awt.Color(0, 0, 102))); // NOI18N
  61.  
  62.         jLabel2.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  63.         jLabel2.setForeground(new java.awt.Color(255, 0, 51));
  64.         jLabel2.setText("Ano de Nascimento: ");
  65.  
  66.         jLabel4.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  67.         jLabel4.setForeground(new java.awt.Color(0, 102, 102));
  68.         jLabel4.setText("Ano Atual: ");
  69.  
  70.         txtAnoAtu.setEditable(false);
  71.         txtAnoAtu.setBackground(new java.awt.Color(51, 255, 255));
  72.  
  73.         try {
  74.             txtAnoNas.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("####")));
  75.         } catch (java.text.ParseException ex) {
  76.             ex.printStackTrace();
  77.         }
  78.         txtAnoNas.setText("Ano");
  79.  
  80.         javax.swing.GroupLayout pan1Layout = new javax.swing.GroupLayout(pan1);
  81.         pan1.setLayout(pan1Layout);
  82.         pan1Layout.setHorizontalGroup(
  83.             pan1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  84.             .addGroup(pan1Layout.createSequentialGroup()
  85.                 .addGroup(pan1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  86.                     .addGroup(pan1Layout.createSequentialGroup()
  87.                         .addGap(34, 34, 34)
  88.                         .addComponent(jLabel2, javax.swing.GroupLayout.DEFAULT_SIZE, 144, Short.MAX_VALUE)
  89.                         .addGap(18, 18, 18))
  90.                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pan1Layout.createSequentialGroup()
  91.                         .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  92.                         .addComponent(jLabel4)
  93.                         .addGap(34, 34, 34)))
  94.                 .addGroup(pan1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  95.                     .addComponent(txtAnoNas, javax.swing.GroupLayout.DEFAULT_SIZE, 132, Short.MAX_VALUE)
  96.                     .addComponent(txtAnoAtu))
  97.                 .addGap(17, 17, 17))
  98.         );
  99.         pan1Layout.setVerticalGroup(
  100.             pan1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  101.             .addGroup(pan1Layout.createSequentialGroup()
  102.                 .addContainerGap()
  103.                 .addGroup(pan1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  104.                     .addComponent(jLabel2)
  105.                     .addComponent(txtAnoNas, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  106.                 .addGap(18, 18, 18)
  107.                 .addGroup(pan1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  108.                     .addComponent(jLabel4)
  109.                     .addComponent(txtAnoAtu, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  110.                 .addContainerGap(39, Short.MAX_VALUE))
  111.         );
  112.  
  113.         pan2.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Situação", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Tahoma", 0, 14), new java.awt.Color(0, 204, 0))); // NOI18N
  114.  
  115.         jLabel3.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  116.         jLabel3.setForeground(new java.awt.Color(255, 102, 0));
  117.         jLabel3.setText("Situação Eleitoral:");
  118.  
  119.         jLabel5.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  120.         jLabel5.setForeground(new java.awt.Color(0, 102, 204));
  121.         jLabel5.setText("Idade: ");
  122.  
  123.         jLabel6.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  124.         jLabel6.setForeground(new java.awt.Color(0, 102, 204));
  125.         jLabel6.setText("Horas:");
  126.  
  127.         jLabel7.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  128.         jLabel7.setForeground(new java.awt.Color(0, 102, 204));
  129.         jLabel7.setText("Semanas: ");
  130.  
  131.         jLabel8.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  132.         jLabel8.setForeground(new java.awt.Color(0, 102, 204));
  133.         jLabel8.setText("Segundos: ");
  134.  
  135.         txtIda.setEditable(false);
  136.         txtIda.setBackground(new java.awt.Color(51, 255, 255));
  137.  
  138.         txtSem.setEditable(false);
  139.         txtSem.setBackground(new java.awt.Color(51, 255, 255));
  140.  
  141.         txtHor.setEditable(false);
  142.         txtHor.setBackground(new java.awt.Color(51, 255, 255));
  143.  
  144.         txtSeg.setEditable(false);
  145.         txtSeg.setBackground(new java.awt.Color(51, 255, 255));
  146.  
  147.         txtSitEle.setEditable(false);
  148.         txtSitEle.setBackground(new java.awt.Color(51, 255, 255));
  149.  
  150.         javax.swing.GroupLayout pan2Layout = new javax.swing.GroupLayout(pan2);
  151.         pan2.setLayout(pan2Layout);
  152.         pan2Layout.setHorizontalGroup(
  153.             pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  154.             .addGroup(pan2Layout.createSequentialGroup()
  155.                 .addContainerGap()
  156.                 .addGroup(pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  157.                     .addGroup(pan2Layout.createSequentialGroup()
  158.                         .addGroup(pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  159.                             .addGroup(pan2Layout.createSequentialGroup()
  160.                                 .addGap(3, 3, 3)
  161.                                 .addComponent(jLabel6))
  162.                             .addComponent(jLabel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  163.                         .addGap(18, 18, 18)
  164.                         .addGroup(pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  165.                             .addComponent(txtIda, javax.swing.GroupLayout.DEFAULT_SIZE, 114, Short.MAX_VALUE)
  166.                             .addComponent(txtHor))
  167.                         .addGap(18, 18, 18)
  168.                         .addGroup(pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  169.                             .addComponent(jLabel8)
  170.                             .addComponent(jLabel7))
  171.                         .addGap(18, 18, 18)
  172.                         .addGroup(pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  173.                             .addComponent(txtSem, javax.swing.GroupLayout.DEFAULT_SIZE, 206, Short.MAX_VALUE)
  174.                             .addComponent(txtSeg)))
  175.                     .addGroup(pan2Layout.createSequentialGroup()
  176.                         .addComponent(jLabel3)
  177.                         .addGap(18, 18, 18)
  178.                         .addComponent(txtSitEle, javax.swing.GroupLayout.PREFERRED_SIZE, 140, javax.swing.GroupLayout.PREFERRED_SIZE)))
  179.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  180.         );
  181.         pan2Layout.setVerticalGroup(
  182.             pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  183.             .addGroup(pan2Layout.createSequentialGroup()
  184.                 .addContainerGap()
  185.                 .addGroup(pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  186.                     .addComponent(jLabel5)
  187.                     .addComponent(txtIda, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  188.                     .addComponent(jLabel7)
  189.                     .addComponent(txtSem, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  190.                 .addGap(25, 25, 25)
  191.                 .addGroup(pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  192.                     .addComponent(txtSeg, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  193.                     .addGroup(pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  194.                         .addComponent(jLabel6)
  195.                         .addComponent(txtHor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  196.                         .addComponent(jLabel8)))
  197.                 .addGap(31, 31, 31)
  198.                 .addGroup(pan2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  199.                     .addComponent(jLabel3)
  200.                     .addComponent(txtSitEle, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  201.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  202.         );
  203.  
  204.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  205.         getContentPane().setLayout(layout);
  206.         layout.setHorizontalGroup(
  207.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  208.             .addGroup(layout.createSequentialGroup()
  209.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  210.                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  211.                         .addContainerGap()
  212.                         .addComponent(pan1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  213.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  214.                         .addComponent(btnCal, javax.swing.GroupLayout.PREFERRED_SIZE, 145, javax.swing.GroupLayout.PREFERRED_SIZE)
  215.                         .addGap(6, 6, 6))
  216.                     .addGroup(layout.createSequentialGroup()
  217.                         .addGap(184, 184, 184)
  218.                         .addComponent(jLabel1))
  219.                     .addGroup(layout.createSequentialGroup()
  220.                         .addContainerGap()
  221.                         .addComponent(pan2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
  222.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  223.         );
  224.         layout.setVerticalGroup(
  225.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  226.             .addGroup(layout.createSequentialGroup()
  227.                 .addGap(6, 6, 6)
  228.                 .addComponent(jLabel1)
  229.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  230.                     .addGroup(layout.createSequentialGroup()
  231.                         .addGap(18, 18, 18)
  232.                         .addComponent(pan1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  233.                     .addGroup(layout.createSequentialGroup()
  234.                         .addGap(29, 29, 29)
  235.                         .addComponent(btnCal, javax.swing.GroupLayout.PREFERRED_SIZE, 42, javax.swing.GroupLayout.PREFERRED_SIZE)))
  236.                 .addGap(18, 18, 18)
  237.                 .addComponent(pan2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  238.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
  239.         );
  240.  
  241.         pack();
  242.     }// </editor-fold>                        
  243.  
  244.     // Método: Cálculo da idade (botão)
  245.     private void btnCalActionPerformed(java.awt.event.ActionEvent evt) {                                      
  246.  
  247.         try
  248.         {
  249.             // Capturando dados
  250.             int ano_atual = cal.get(Calendar.YEAR);              // Ano Atual
  251.             int ano_nasc = Integer.parseInt(txtAnoNas.getText());// Ano Nascimento
  252.  
  253.             // Cálculos
  254.             int ida = ano_atual - ano_nasc;
  255.             int sem = ida * 48 ;
  256.             int hor = ida * 365 * 24;
  257.             int seg = hor * 60;
  258.  
  259.             // Saída de dados
  260.             txtAnoAtu.setText(Integer.toString(ano_atual));
  261.             txtIda.setText(Integer.toString(ida));
  262.             txtSem.setText(Integer.toString(sem));
  263.             txtHor.setText(Integer.toString(hor));
  264.             txtSeg.setText(Integer.toString(seg));
  265.  
  266.             // Estrutura de decisão
  267.             if( ida > 0 && ida < 16  )
  268.             {
  269.                 txtSitEle.setText("Votação proibida");
  270.             }
  271.  
  272.             else if( (ida >= 16 && ida < 18) || (ida >= 70) )
  273.             {
  274.                 txtSitEle.setText("Votação opcional");
  275.             }
  276.  
  277.             else
  278.             {
  279.                 txtSitEle.setText("Votação obrigatória");
  280.             }
  281.         }
  282.  
  283.         catch (NumberFormatException e)
  284.         {
  285.             JOptionPane.showMessageDialog(this, "Preencha o campo corretamente");
  286.             System.err.println(e);
  287.         }
  288.     }                                      
  289.  
  290.     public static void main(String args[])
  291.     {
  292.         try
  293.         {
  294.             for(javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels())
  295.             {
  296.                 if("Nimbus".equals(info.getName()))
  297.                 {
  298.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());
  299.                     break;
  300.                 }
  301.             }
  302.         }
  303.  
  304.         catch(ClassNotFoundException | InstantiationException | IllegalAccessException | javax.swing.UnsupportedLookAndFeelException ex)
  305.         {
  306.             java.util.logging.Logger.getLogger(eleitor.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  307.         }
  308.  
  309.         java.awt.EventQueue.invokeLater(() -> {
  310.             new eleitor().setVisible(true);
  311.         });
  312.     }
  313.     // Variables declaration - do not modify                    
  314.     private javax.swing.JButton btnCal;
  315.     private javax.swing.JLabel jLabel1;
  316.     private javax.swing.JLabel jLabel2;
  317.     private javax.swing.JLabel jLabel3;
  318.     private javax.swing.JLabel jLabel4;
  319.     private javax.swing.JLabel jLabel5;
  320.     private javax.swing.JLabel jLabel6;
  321.     private javax.swing.JLabel jLabel7;
  322.     private javax.swing.JLabel jLabel8;
  323.     private javax.swing.JPanel pan1;
  324.     private javax.swing.JPanel pan2;
  325.     private javax.swing.JTextField txtAnoAtu;
  326.     private javax.swing.JFormattedTextField txtAnoNas;
  327.     private javax.swing.JTextField txtHor;
  328.     private javax.swing.JTextField txtIda;
  329.     private javax.swing.JTextField txtSeg;
  330.     private javax.swing.JTextField txtSem;
  331.     private javax.swing.JTextField txtSitEle;
  332.     // End of variables declaration                  
  333.  
  334.     // Método: Configurações
  335.     private void config()
  336.     {
  337.         // Frame
  338.         this.setLocationRelativeTo(null);                // Tela no centro
  339.         this.getContentPane().setBackground(Color.WHITE);// Tela em branco
  340.  
  341.         // Painel
  342.         pan1.setBackground(Color.white);// Dados
  343.         pan2.setBackground(Color.white);// Situação
  344.     }
  345. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement