Я пытаюсь построить графический калькулятор температуры. Я почти уверен, что близок к завершению и пытаюсь найти исправление, прежде чем я перебираю старый код и java книгу. Плюс, может быть, это поможет кому-то в будущем. Я полагаю, что моя ошибка произошла вокруг секции операторов if, и могу только думать, что, возможно, я ошибочно помещаю вещи в неправильное место, то есть в текстовое поле и метки.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.Math;
public class GUI implements ActionListener{
JFrame frame;
JPanel contentPane;
JLabel label1, label2, label3, label4, label5;
JTextField word1;
JButton Celcius, Fahrenheit;
public GUI(){
frame = new JFrame("Temperature Convertor");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Box layout
//contentPane.setLayout(new BoxLayout(contentPane,BoxLayout.PAGE_AXIS));
//contentPane.setBorder(BorderFactory.createEmptyBorder(10,10,10,10));
//contentPane.setBackground(Color.black);
//Grid layout
contentPane = new JPanel();
contentPane.setLayout(new GridLayout(0, 2, 10, 5));
contentPane.setBorder(BorderFactory.createEmptyBorder(10,10,10,10));
contentPane.setBackground(Color.black);
label1 = new JLabel("Temperature Convertor");
label1.setAlignmentX(JLabel.CENTER_ALIGNMENT);
label1.setBorder(BorderFactory.createEmptyBorder(30,30,30,30));
contentPane.add(label1);
label2 = new JLabel(new ImageIcon("image1.jpg"));
label2.setAlignmentX(JLabel.CENTER_ALIGNMENT);
label2.setBorder(BorderFactory.createEmptyBorder(30,30,30,30));
contentPane.add(label2);
label3 = new JLabel("Enter Temperature: ");
label3.setAlignmentX(JLabel.CENTER_ALIGNMENT);
label3.setBorder(BorderFactory.createEmptyBorder(30,30,30,30));
contentPane.add(label3);
word1 = new JTextField(10);
contentPane.add(word1);
Celcius = new JButton("Celcius");
Celcius.setAlignmentX(JButton.CENTER_ALIGNMENT);
Celcius.setActionCommand("Celcius");
Celcius.addActionListener(this);
contentPane.add(Celcius);
Fahrenheit = new JButton("Fahrenheit");
Fahrenheit.setAlignmentX(JButton.CENTER_ALIGNMENT);
Fahrenheit.setActionCommand("Fahrenheit");
Fahrenheit.addActionListener(this);
contentPane.add(Fahrenheit);
label4 = new JLabel("The Coverted Temperature is: ");
label4.setAlignmentX(JLabel.CENTER_ALIGNMENT);
label4.setBorder(BorderFactory.createEmptyBorder(30,30,30,30));
contentPane.add(label4);
label5 = new JLabel("");
label5.setAlignmentX(JLabel.CENTER_ALIGNMENT);
label5.setBorder(BorderFactory.createEmptyBorder(30,30,30,30));
contentPane.add(label5);
frame.setContentPane(contentPane);
frame.pack();
frame.setVisible(true);
}
public void actionPerformed(ActionEvent event){
String eventName = event.getActionCommand();
if (eventName.equals("Celcius")){
String label5;
double word1;
label5 = word1.getText();
label5 = (((Double.parseDouble(word1)*9)%5)+32) + "Degree's Celcuis"
;
label5.setText(Double.toString(word1));
}
else if (eventName.equals("Fahrenheit")){
String label5;
double word1;
label5 = word1.getText();
label5 = ((((Double.parseDouble(word1)-32)*5)%9)) + "Degree's
Fahrenheit" ;
label5.setText(Double.toString(word1));
}
}
public static void main(String[] args){
GUI g = new GUI();
}
}