Listeners Je suis nouveau à Java et je suis en train de faire un simple programme débutant qui prend les utilisateurs d'entrée de la température et le sort converti en celsius. Je pense que j'ai quelque chose de mal connecté avec les auditeurs mais parce qu'il donne une sortie mais c'est toujours zéro. Je ne suis pas vraiment sûr de ce que j'ai fait de mal avec les auditeurs et les événements d'action.Java Swing/JFrame
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class TemperatureConversionJFrame extends JFrame{
private final JTextField temperatureF;
private final JLabel result;
public int fahrenheit = 0;
public TemperatureConversionJFrame(){
super("Celsius Conversion");
setLayout(new FlowLayout());
temperatureF = new JTextField("Enter temperature in fahrenheit to be converted");
add(temperatureF);
result = new JLabel("Result in Celsius");
add(result);
TextFieldHandler handler = new TextFieldHandler();
temperatureF.addActionListener(handler);
}
private class TextFieldHandler implements ActionListener{
@Override
public void actionPerformed(java.awt.event.ActionEvent evt){
int F;
int results;
F = Integer.parseInt(temperatureF.getText());
results = 5/9 * (F - 32);
result.setText(String.valueOf(results));
}
}
import javax.swing.JFrame;
public class TemperatureConversionJFrameTest
{
public static void main(String[] args)
{
TemperatureConversionJFrame temperatureConversionJFrame = new TemperatureConversionJFrame();
temperatureConversionJFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
temperatureConversionJFrame.setSize(275, 100);
temperatureConversionJFrame.setVisible(true);
}
Ah. J'ai complètement manqué ça. Merci, c'était juste la logique qui l'a fait afficher 0. –
@MichaelFogarty, C'est pourquoi le débogage de base comme l'affichage de la valeur des calculs doit être utilisé. Il vous aide à affiner le problème au lieu de deviner. – camickr
Je vais accepter la réponse dès qu'elle me le permettra. Merci! –