The following program converts feet and inches to centimeters (there are 2.54 centimeters per inch).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
// InchesToCm.java -- converts feet and inches to centimeters
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
////////////////////////////////////////////////////////////////// InchesToCm
/** InchesToCm contains main program to convert feet an inches
* to centimeters.
* @author Fred Swartz
* @version 2004-04-25
*/
class InchesToCm {
/** Create window containing InchesToCmGUI panel. */
public static void main(String[] args) {
JFrame win = new JFrame();
win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
win.setTitle("Inches To Centimeters");
win.setContentPane(new InchesToCmGUI());
win.pack();
win.setVisible(true);
}//end main
}//endclass InchesToCm
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
// InchesToCmGUI.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
/** Subclass JPanel to create GUI for ft+inches to cm conversion.*/
class InchesToCmGUI extends JPanel {
private JTextField _feetField = new JTextField(4);
private JTextField _inchesField = new JTextField(4);
private JTextField _centimetersField = new JTextField(5);
//======================================================= constructor
public InchesToCmGUI() {
JButton equalsButton = new JButton("=");
equalsButton.addActionListener(new ConvertListener());
//-- Layout components
this.setLayout(new FlowLayout());
this.add(new JLabel("Feet"));
this.add(_feetField);
this.add(new JLabel("Inches"));
this.add(_inchesField);
this.add(equalsButton);
this.add(new JLabel("Centimeters"));
this.add(_centimetersField);
}//end constructor
///////////////////////////////////////// innner class ConvertListener
/** Listener class to convert ft+inches to cm. */
class ConvertListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
try {
double ftVal = Double.parseDouble(_feetField.getText());
double inVal = Double.parseDouble(_inchesField.getText());
_centimetersField.setText("" + (2.54 * (12*ftVal + inVal)));
} catch (NumberFormatException ex) {
_centimetersField.setText("ERROR");
}
}
}//end inner class
}//endclass
|