Guest User

Untitled

a guest
Nov 30th, 2015
460
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 19.87 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. import java.util.*;
  7. import java.io.*;
  8. /**
  9.  *
  10.  * @author Jacob
  11.  */
  12. public class NewJFrame extends javax.swing.JFrame  {
  13.        
  14.        
  15.        
  16.         static  StudentInfo myStudents = new StudentInfo();
  17.  
  18.     /**
  19.      * Creates new form NewJFrame
  20.      */
  21.     public NewJFrame() {
  22.         initComponents();
  23.     }
  24.  
  25.     /**
  26.      * This method is called from within the constructor to initialize the form.
  27.      * WARNING: Do NOT modify this code. The content of this method is always
  28.      * regenerated by the Form Editor.
  29.      */
  30.     @SuppressWarnings("unchecked")
  31.     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
  32.     private void initComponents() {
  33.  
  34.         jSpinner1 = new javax.swing.JSpinner();
  35.         jPanel1 = new javax.swing.JPanel();
  36.         lblPName = new javax.swing.JLabel();
  37.         lblFName = new javax.swing.JLabel();
  38.         lblAddress = new javax.swing.JLabel();
  39.         lblID = new javax.swing.JLabel();
  40.         lblWageRate = new javax.swing.JLabel();
  41.         lblHoursWorked = new javax.swing.JLabel();
  42.         txtFName = new javax.swing.JTextField();
  43.         txtAddress = new javax.swing.JTextField();
  44.         txtID = new javax.swing.JTextField();
  45.         txtWage = new javax.swing.JTextField();
  46.         txtHoursWorked = new javax.swing.JTextField();
  47.         btnAddStudent = new javax.swing.JButton();
  48.         lblLName = new javax.swing.JLabel();
  49.         txtLName = new javax.swing.JTextField();
  50.         btnSearch = new javax.swing.JButton();
  51.         lbloutputFName = new javax.swing.JLabel();
  52.         lblStudentInfo = new javax.swing.JLabel();
  53.         lblDStudentInfo = new javax.swing.JLabel();
  54.         lblIncome = new javax.swing.JLabel();
  55.         lblDIncome = new javax.swing.JLabel();
  56.  
  57.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  58.  
  59.         jPanel1.setBackground(new java.awt.Color(128, 128, 128));
  60.         jPanel1.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
  61.  
  62.         lblPName.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
  63.         lblPName.setText("Student Payroll");
  64.  
  65.         lblFName.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  66.         lblFName.setText("First Name: ");
  67.  
  68.         lblAddress.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  69.         lblAddress.setText("Address: ");
  70.  
  71.         lblID.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  72.         lblID.setText("StudentID: ");
  73.  
  74.         lblWageRate.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  75.         lblWageRate.setText("Hourly wage:");
  76.  
  77.         lblHoursWorked.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  78.         lblHoursWorked.setText("Hours worked: ");
  79.  
  80.         txtFName.addActionListener(new java.awt.event.ActionListener() {
  81.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  82.                 txtFNameActionPerformed(evt);
  83.             }
  84.         });
  85.  
  86.         txtAddress.addActionListener(new java.awt.event.ActionListener() {
  87.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  88.                 txtAddressActionPerformed(evt);
  89.             }
  90.         });
  91.  
  92.         txtID.addActionListener(new java.awt.event.ActionListener() {
  93.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  94.                 txtIDActionPerformed(evt);
  95.             }
  96.         });
  97.  
  98.         txtWage.addActionListener(new java.awt.event.ActionListener() {
  99.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  100.                 txtWageActionPerformed(evt);
  101.             }
  102.         });
  103.  
  104.         txtHoursWorked.addActionListener(new java.awt.event.ActionListener() {
  105.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  106.                 txtHoursWorkedActionPerformed(evt);
  107.             }
  108.         });
  109.  
  110.         btnAddStudent.setText("Submit");
  111.         btnAddStudent.addActionListener(new java.awt.event.ActionListener() {
  112.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  113.                 btnAddStudentActionPerformed(evt);
  114.             }
  115.         });
  116.  
  117.         lblLName.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  118.         lblLName.setText("Last Name: ");
  119.  
  120.         txtLName.addActionListener(new java.awt.event.ActionListener() {
  121.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  122.                 txtLNameActionPerformed(evt);
  123.             }
  124.         });
  125.  
  126.         btnSearch.setText("Display Info");
  127.         btnSearch.addActionListener(new java.awt.event.ActionListener() {
  128.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  129.                 btnSearchActionPerformed(evt);
  130.             }
  131.         });
  132.  
  133.         lblStudentInfo.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  134.         lblStudentInfo.setText("Student Information: ");
  135.  
  136.         lblIncome.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
  137.         lblIncome.setText("Income: ");
  138.  
  139.         javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
  140.         jPanel1.setLayout(jPanel1Layout);
  141.         jPanel1Layout.setHorizontalGroup(
  142.             jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  143.             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
  144.                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  145.                 .addComponent(lblPName)
  146.                 .addGap(254, 254, 254))
  147.             .addGroup(jPanel1Layout.createSequentialGroup()
  148.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  149.                     .addGroup(jPanel1Layout.createSequentialGroup()
  150.                         .addGap(129, 129, 129)
  151.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  152.                             .addComponent(lblAddress)
  153.                             .addComponent(lblFName)
  154.                             .addComponent(lblWageRate)))
  155.                     .addGroup(jPanel1Layout.createSequentialGroup()
  156.                         .addGap(34, 34, 34)
  157.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  158.                             .addComponent(lblStudentInfo)
  159.                             .addComponent(lblIncome))))
  160.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  161.                     .addGroup(jPanel1Layout.createSequentialGroup()
  162.                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  163.                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  164.                             .addComponent(lblDStudentInfo, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  165.                             .addComponent(lbloutputFName)
  166.                             .addGroup(jPanel1Layout.createSequentialGroup()
  167.                                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  168.                                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
  169.                                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  170.                                             .addComponent(txtAddress, javax.swing.GroupLayout.PREFERRED_SIZE, 102, javax.swing.GroupLayout.PREFERRED_SIZE)
  171.                                             .addComponent(txtFName, javax.swing.GroupLayout.PREFERRED_SIZE, 102, javax.swing.GroupLayout.PREFERRED_SIZE))
  172.                                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 78, Short.MAX_VALUE)
  173.                                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  174.                                             .addComponent(lblLName)
  175.                                             .addComponent(lblID)))
  176.                                     .addComponent(lblHoursWorked, javax.swing.GroupLayout.Alignment.TRAILING)
  177.                                     .addGroup(jPanel1Layout.createSequentialGroup()
  178.                                         .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  179.                                             .addComponent(btnAddStudent)
  180.                                             .addComponent(txtWage, javax.swing.GroupLayout.PREFERRED_SIZE, 102, javax.swing.GroupLayout.PREFERRED_SIZE))
  181.                                         .addGap(0, 0, Short.MAX_VALUE)))
  182.                                 .addGap(18, 18, 18)
  183.                                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  184.                                     .addComponent(txtID, javax.swing.GroupLayout.PREFERRED_SIZE, 102, javax.swing.GroupLayout.PREFERRED_SIZE)
  185.                                     .addComponent(txtLName, javax.swing.GroupLayout.PREFERRED_SIZE, 102, javax.swing.GroupLayout.PREFERRED_SIZE)
  186.                                     .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  187.                                         .addComponent(btnSearch)
  188.                                         .addComponent(txtHoursWorked, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)))
  189.                                 .addGap(89, 89, 89)))
  190.                         .addGap(12, 12, 12))
  191.                     .addGroup(jPanel1Layout.createSequentialGroup()
  192.                         .addGap(22, 22, 22)
  193.                         .addComponent(lblDIncome, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  194.                         .addContainerGap())))
  195.         );
  196.         jPanel1Layout.setVerticalGroup(
  197.             jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  198.             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
  199.                 .addContainerGap()
  200.                 .addComponent(lblPName)
  201.                 .addGap(30, 30, 30)
  202.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  203.                     .addComponent(lblFName)
  204.                     .addComponent(txtFName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  205.                     .addComponent(lblLName)
  206.                     .addComponent(txtLName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  207.                 .addGap(18, 18, 18)
  208.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  209.                     .addComponent(lblAddress)
  210.                     .addComponent(lblID)
  211.                     .addComponent(txtAddress, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  212.                     .addComponent(txtID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
  213.                 .addGap(18, 18, 18)
  214.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  215.                     .addComponent(lblWageRate)
  216.                     .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  217.                         .addComponent(txtWage, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  218.                         .addComponent(lblHoursWorked)
  219.                         .addComponent(txtHoursWorked, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
  220.                 .addGap(33, 33, 33)
  221.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  222.                     .addComponent(btnAddStudent)
  223.                     .addComponent(btnSearch))
  224.                 .addGap(50, 50, 50)
  225.                 .addComponent(lbloutputFName)
  226.                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  227.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  228.                     .addComponent(lblStudentInfo)
  229.                     .addComponent(lblDStudentInfo, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE))
  230.                 .addGap(18, 18, 18)
  231.                 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  232.                     .addComponent(lblIncome, javax.swing.GroupLayout.Alignment.TRAILING)
  233.                     .addComponent(lblDIncome, javax.swing.GroupLayout.PREFERRED_SIZE, 17, javax.swing.GroupLayout.PREFERRED_SIZE))
  234.                 .addContainerGap(229, Short.MAX_VALUE))
  235.         );
  236.  
  237.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  238.         getContentPane().setLayout(layout);
  239.         layout.setHorizontalGroup(
  240.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  241.             .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  242.         );
  243.         layout.setVerticalGroup(
  244.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  245.             .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  246.         );
  247.  
  248.         pack();
  249.     }// </editor-fold>                        
  250.  
  251.     private void btnSearchActionPerformed(java.awt.event.ActionEvent evt)throws IOException {                                          
  252.                 int ID = Integer.parseInt(txtID.getText());
  253.                 Student myStudent = myStudents.readStudent(ID);
  254.                 myStudents.readStudent(ID);
  255.                
  256.                 double wageRate = Double.parseDouble(txtWage.getText());
  257.                 double hoursWorked = Double.parseDouble(txtWage.getText());
  258.                 double grossIncome = wageRate*hoursWorked;
  259.                 double stateTax = grossIncome*.065;
  260.                 double sSTax = grossIncome*.062;
  261.                 double fedTax = grossIncome*.1;
  262.                 double netIncome = grossIncome - stateTax - sSTax - fedTax;
  263.                 lblDIncome.setText("Gross Income: " + grossIncome + ", State Tax: " + stateTax + ", Social Security Tax: " + sSTax + ", Federal Tax: " + fedTax + ", Net Income: " + netIncome );
  264.                
  265.                
  266.   // TODO add your handling code here:
  267.     }                                        
  268.  
  269.     private void txtLNameActionPerformed(java.awt.event.ActionEvent evt) {                                        
  270.         // TODO add your handling code here:
  271.     }                                        
  272.  
  273.     private void btnAddStudentActionPerformed(java.awt.event.ActionEvent evt)  {                                              
  274.         String fName = txtFName.getText();
  275.         String lName = txtLName.getText();
  276.         String address = txtAddress.getText();
  277.         int ID = Integer.parseInt(txtID.getText());
  278.         double wageRate = Double.parseDouble(txtWage.getText());
  279.         double hoursWorked = Double.parseDouble(txtHoursWorked.getText());
  280.         Student myStudent = new Student(fName, lName, ID, wageRate, hoursWorked, address);
  281.       //  myStudents.writeStudent(myStudent);
  282.     }                                            
  283.  
  284.     private void txtHoursWorkedActionPerformed(java.awt.event.ActionEvent evt) {                                              
  285.         // TODO add your handling code here:
  286.     }                                              
  287.  
  288.     private void txtWageActionPerformed(java.awt.event.ActionEvent evt) {                                        
  289.         // TODO add your handling code here:
  290.     }                                      
  291.  
  292.     private void txtIDActionPerformed(java.awt.event.ActionEvent evt) {                                      
  293.         // TODO add your handling code here:
  294.     }                                    
  295.  
  296.     private void txtAddressActionPerformed(java.awt.event.ActionEvent evt) {                                          
  297.         // TODO add your handling code here:
  298.     }                                          
  299.  
  300.     private void txtFNameActionPerformed(java.awt.event.ActionEvent evt) {                                        
  301.         // TODO add your handling code here:
  302.     }                                        
  303.  
  304.     /**
  305.      * @param args the command line arguments
  306.      */
  307.     public static void main(String args[]) throws IOException {
  308.         /* Set the Nimbus look and feel */
  309.         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
  310.         /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
  311.          * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
  312.          */
  313.         try {
  314.             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  315.                 if ("Nimbus".equals(info.getName())) {
  316.                     javax.swing.UIManager.setLookAndFeel(info.getClassName());
  317.                     break;
  318.                 }
  319.             }
  320.         } catch (ClassNotFoundException ex) {
  321.             java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  322.         } catch (InstantiationException ex) {
  323.             java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  324.         } catch (IllegalAccessException ex) {
  325.             java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  326.         } catch (javax.swing.UnsupportedLookAndFeelException ex) {
  327.             java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  328.         }
  329.         //</editor-fold>
  330.        
  331.         myStudents.open("students.dat");
  332.          
  333.        
  334.         /* Create and display the form */
  335.         java.awt.EventQueue.invokeLater(new Runnable() {
  336.             public void run()  {
  337.                 new NewJFrame().setVisible(true);
  338.                
  339.                
  340.                
  341.  
  342.             }
  343.         });
  344.     }
  345.  
  346.     // Variables declaration - do not modify                    
  347.     private javax.swing.JButton btnAddStudent;
  348.     private javax.swing.JButton btnSearch;
  349.     private javax.swing.JPanel jPanel1;
  350.     private javax.swing.JSpinner jSpinner1;
  351.     private javax.swing.JLabel lblAddress;
  352.     private javax.swing.JLabel lblDIncome;
  353.     private javax.swing.JLabel lblDStudentInfo;
  354.     private javax.swing.JLabel lblFName;
  355.     private javax.swing.JLabel lblHoursWorked;
  356.     private javax.swing.JLabel lblID;
  357.     private javax.swing.JLabel lblIncome;
  358.     private javax.swing.JLabel lblLName;
  359.     private javax.swing.JLabel lblPName;
  360.     private javax.swing.JLabel lblStudentInfo;
  361.     private javax.swing.JLabel lblWageRate;
  362.     private javax.swing.JLabel lbloutputFName;
  363.     private javax.swing.JTextField txtAddress;
  364.     private javax.swing.JTextField txtFName;
  365.     private javax.swing.JTextField txtHoursWorked;
  366.     private javax.swing.JTextField txtID;
  367.     private javax.swing.JTextField txtLName;
  368.     private javax.swing.JTextField txtWage;
  369.     // End of variables declaration                  
  370. }
Advertisement
Add Comment
Please, Sign In to add comment