Java Reference
In-Depth Information
public class BMICalculator extends JFrame {
private final JTextField txtMass = makePrettyTextField();
private final JTextField txtHeight = makePrettyTextField();
private final JButton btnCalc = makePrettyButton("Calculate BMI");
private final BMICalculator self = this;
public BMICalculator() {
super();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setTitle("BMI Calculator");
getContentPane().setLayout(
new BoxLayout(getContentPane(), BoxLayout.PAGE_AXIS));
txtMass.setPreferredSize(new Dimension(200,30));
txtHeight.setPreferredSize(new Dimension(200,30));
txtMass.setMaximumSize(txtMass.getPreferredSize());
txtHeight.setMaximumSize(txtHeight.getPreferredSize());
getContentPane().setBackground(new Color(232, 240, 255));
getContentPane().add(makePrettyLabel("Your mass (kg):"));
getContentPane().add(Box.createRigidArea(new Dimension(5,5)));
getContentPane().add(txtMass);
getContentPane().add(Box.createRigidArea(new Dimension(5,5)));
getContentPane().add(Box.createVerticalGlue());
getContentPane().add(makePrettyLabel("Your height (cm):"));
getContentPane().add(Box.createRigidArea(new Dimension(5,5)));
getContentPane().add(txtHeight);
getContentPane().add(Box.createRigidArea(new Dimension(5,5)));
getContentPane().add(Box.createVerticalGlue());
getContentPane().add(btnCalc);
getContentPane().add(Box.createRigidArea(new Dimension(5,5)));
// Add BMI calculation
btnCalc.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
double mass;
double height;
try {
mass = Double.parseDouble(txtMass.getText());
height = Double.parseDouble(txtHeight.getText());
} catch (NumberFormatException e) {
JOptionPane.showMessageDialog(self,
"Please enter a valid number for mass and height.",
"Input error",
JOptionPane.ERROR_MESSAGE);
Search WWH ::




Custom Search