Study/Java

12. 09. 19 실습( 월급 계산기 )

Houkibosi 2012. 9. 23. 21:25

기본급과 시금을 입력하고 40시간 초과분에 대해서는 50% 추가금 계산



import java.awt.FlowLayout;

import java.awt.event.*;

import java.text.*;

import javax.swing.*;


class MyFrame extends JFrame

{

JButton Calculate;

JTextField HourlyWage_F = new JTextField();

JTextField HoursWorked_F = new JTextField();

JTextField GrossWages_F = new JTextField();

DecimalFormat dollars = new DecimalFormat( "$0.00" );

public MyFrame()

{

setSize(250, 200);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setTitle("Wage Calcuator");

this.setLayout(null);

JLabel HourlyWage_L = new JLabel("Hourly Wage");

JLabel HoursWorked_L = new JLabel("Hours Worked");

JLabel GrossWages_L = new JLabel("Gross Wages");

Calculate = new JButton("Calculate");

HourlyWage_L.setBounds(16, 16, 90, 21);

HourlyWage_F.setBounds(120, 16, 90, 21);

HourlyWage_F.setHorizontalAlignment( JTextField.RIGHT  );

HoursWorked_L.setBounds(16, 56, 90, 21);

HoursWorked_F.setBounds(120, 56, 90, 21);

HoursWorked_F.setHorizontalAlignment( JTextField.RIGHT  );

GrossWages_L.setBounds(16, 96, 90, 21);

GrossWages_F.setBounds(120, 96, 90, 21);

GrossWages_F.setHorizontalAlignment( JTextField.RIGHT  );

GrossWages_F.setEditable(false);

Calculate.setBounds(120, 136, 90, 24);

Calculate.addActionListener(new MyListener());

this.add(HourlyWage_L);

this.add(HourlyWage_F);

this.add(HoursWorked_L);

this.add(HoursWorked_F);

this.add(GrossWages_L);

this.add(GrossWages_F);

this.add(Calculate);

setVisible(true);

}

private class MyListener implements ActionListener

{

public void actionPerformed(ActionEvent e) 

{

if(e.getSource() == Calculate)

{

int Time = Integer.parseInt(HoursWorked_F.getText()), Pay = Integer.parseInt(HourlyWage_F.getText());

int total=0;

if(Time > 40)

{ total += (Time-40) * (Pay*1.5); total += Pay*40; }


else if(Time >0 || Time < 40)

total += Pay*Time;


GrossWages_F.setText( dollars.format( total ) );

}

}

}

}


public class class1 

{

public static void main(String[] args) 

{

MyFrame f = new MyFrame();

}

}