그래서 내 코드는 사용자에게 입력을 요청합니다. 그런 다음 임시직을 전환합니다. 간단해야하지만 내 코드가 작동하지 않습니다. 내 lable 3을 출력하지 않습니다. 단지 아무것도하지 않습니다. 그건 내가 내 코드와 데 유일한 문제입니다, 난 그냥 해결하는 방법을 잘 모릅니다 그것을JLabel이 GUI에 텍스트를 표시하지 않습니다.
import javax.swing.*;
public class FahrenheitPanel extends JPanel
{
private JLabel lable1;
private JLabel lable2;
private JLabel lable3;
private JTextField fahrenheit;
public FahrenheitPanel()
{
lable1 = new JLabel ("Enter Fahrenheit temperature:");
lable2 = new JLabel ("Temperature in Celsius: ");
fahrenheit = new JTextField (5);
fahrenheit.addActionListener (new TempListener());
add (lable1);
add (fahrenheit);
add (lable2);
setPreferredSize (new Dimension(300, 75));
}
private class TempListener implements ActionListener
{
public void actionPerformed (ActionEvent event)
{
int fahrenheitTemp, celsiusTemp;
String text = fahrenheit.getText();
fahrenheitTemp = Integer.parseInt (text);
celsiusTemp = (fahrenheitTemp-32) * 5/9;
lable3.setText(Integer.toString (celsiusTemp));
add (lable3);
}
}
public static void main (String[] args)
{
JFrame frame = new JFrame ("Fahrenheit to Celsius Converter");
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
FahrenheitPanel panel = new FahrenheitPanel();
frame.getContentPane().add(panel);
frame.pack();
frame.setVisible(true);
}
}
코드 블록에 일관되고 논리적 인 들여 쓰기를 사용하십시오. 코드의 들여 쓰기는 사람들이 프로그램 흐름을 이해하도록 돕기위한 것입니다! –