- Para la conversión se usa un botón JButton
- Este botón se activara por defecto cada vez que se de enter en la ventana setDefaultButton(botonConvertir)
- El argumento del constructor será el texto del botón.
- Un listener de eventos se obtendrá de la clase interna BotonListener
- Cuando se presione el botón se invocara el método actionPerformed del listener.
- Para convertir se realiza fahrenheit = celsius * 1.8 + 32
- Con el método fahrenheitLabel.setText se modifica el texto del label
public class CelsiusContent {
//Componentes de la aplicacion.
private JButton botonConvertir;
// Constructor
public CelsiusContent() {
//configurar el boton por defecto.
//cada vez que se presione enter se invocara este boton
//se define este boton en el Root Pane.
frame.getRootPane().setDefaultButton(botonConvertir);
}
private Component crearComponentes() {
//Creando los componentes de la ventana
botonConvertir = new JButton("Convertir");
//Se agrega un manejador de eventos
BotonListener listener = new BotonListener();
botonConvertir.addActionListener(listener);
}
//Clase interna que es un listener de eventos.
public class BotonListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
String texto = celsiusInput.getText();
Double celsius = Double.parseDouble(texto);
//convertir celsius a fahrenheit
int fahrenheit = (int)(celsius * 1.8 + 32);
//mostrar los grados fahrenheit en el label
fahrenheitLabel.setText(fahrenheit + " Fahrenheit");
}
}
0 comentarios:
Publicar un comentario