Class CalculadoraController

java.lang.Object
org.example.CalculadoraController

public class CalculadoraController extends Object
CONTROLADOR de la calculadora.

Recibe los clics de los botones definidos en el FXML, llama al modelo (Calculadora) para hacer las cuentas y muestra el resultado en la pantalla.

Author:
Eva Gallardo Romero
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private Calculadora
    El modelo, que hace las operaciones.
    private boolean
    Es true cuando el siguiente número que se pulse debe empezar de cero.
    private String
    Operación elegida: "+", "-", "*", "/" o "" si no hay ninguna.
    private javafx.scene.control.Label
    Etiqueta de la pantalla (fx:id="pantalla" en el FXML).
    private double
    Primer número de la operación (el escrito antes del operador).
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    private String
    formatear(double resultado)
    Convierte el resultado en el texto que se muestra en la pantalla.
    private void
    Se ejecuta al pulsar el botón "C".
    private void
    Se ejecuta al pulsar el botón "=".
    private void
    pulsarNumero(javafx.event.ActionEvent evento)
    Se ejecuta al pulsar un botón de número (0-9).
    private void
    pulsarOperacion(javafx.event.ActionEvent evento)
    Se ejecuta al pulsar un botón de operación (+, -, ×, ÷).
    private void
    Se ejecuta al pulsar el botón del punto decimal.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • pantalla

      private javafx.scene.control.Label pantalla
      Etiqueta de la pantalla (fx:id="pantalla" en el FXML).
    • calculadora

      private Calculadora calculadora
      El modelo, que hace las operaciones.
    • primerNumero

      private double primerNumero
      Primer número de la operación (el escrito antes del operador).
    • operacion

      private String operacion
      Operación elegida: "+", "-", "*", "/" o "" si no hay ninguna.
    • numeroNuevo

      private boolean numeroNuevo
      Es true cuando el siguiente número que se pulse debe empezar de cero.
  • Constructor Details

    • CalculadoraController

      public CalculadoraController()
  • Method Details

    • pulsarNumero

      private void pulsarNumero(javafx.event.ActionEvent evento)
      Se ejecuta al pulsar un botón de número (0-9). Añade el dígito a la pantalla. Como mucho se escriben 10 caracteres para que el número quepa en la pantalla.
      Parameters:
      evento - evento del clic, de él sacamos qué botón se pulsó
    • pulsarPunto

      private void pulsarPunto()
      Se ejecuta al pulsar el botón del punto decimal. Solo añade el punto si el número no tiene ya uno.
    • pulsarOperacion

      private void pulsarOperacion(javafx.event.ActionEvent evento)
      Se ejecuta al pulsar un botón de operación (+, -, ×, ÷). Si ya había una operación pendiente, primero la calcula, así 2 + 3 + 4 da 9. Después guarda el número y la nueva operación.
      Parameters:
      evento - evento del clic
    • pulsarIgual

      private void pulsarIgual()
      Se ejecuta al pulsar el botón "=". Calcula el resultado y lo muestra. Si se divide entre cero, la pantalla muestra "Error".
    • pulsarBorrar

      private void pulsarBorrar()
      Se ejecuta al pulsar el botón "C". Deja la calculadora como al principio.
    • formatear

      private String formatear(double resultado)
      Convierte el resultado en el texto que se muestra en la pantalla. Si es entero (8.0) se muestra sin decimales (8). Si no, se redondea a 8 decimales para que no salgan números como 0.30000000000000004.
      Parameters:
      resultado - número que se va a mostrar
      Returns:
      el texto para la pantalla