Construyendo una Calculadora con Swing en Java: Guía Paso a Paso

Crear una calculadora básica es un excelente proyecto para comenzar con la programación en Java, especialmente para aquellos interesados en aprender sobre interfaces gráficas de usuario (GUI) utilizando Swing. Swing es un poderoso toolkit para GUI incluido con Java que permite a los desarrolladores crear interfaces gráficas ricas e interactivas. En este artículo, te guiaré a través de los pasos para crear tu propia calculadora utilizando Swing en Java.

Paso 1: Configurar el Entorno de Desarrollo

Asegúrate de tener instalado el JDK (Java Development Kit) para compilar y ejecutar programas en Java. También necesitarás un IDE como IntelliJ IDEA, Eclipse o NetBeans que te facilitará escribir y organizar tu código.

Paso 2: Crear la Clase Principal

Empieza creando una nueva clase Java. Puedes nombrarla Calculadora. Esta clase heredará de JFrame para utilizar las capacidades de ventana de Swing.

import javax.swing.*;
import java.awt.event.*;

public class Calculadora extends JFrame {
    // Aquí irán los componentes de la calculadora
}

Paso 3: Añadir Componentes de la UI

Dentro de la clase Calculadora, declara los componentes de la interfaz de usuario que necesitarás, como un JTextField para mostrar los números y botones para las operaciones.

private JTextField pantalla;
private JPanel panelNumeros, panelOperaciones;
// Botones para los números
private JButton[] botonesNumeros = new JButton[10];
// Botones para operaciones (+, -, *, /, =)
private JButton btnSuma, btnResta, btnMultiplica, btnDivide, btnIgual, btnBorrar;

Paso 4: Constructor de la Clase

Inicializa los componentes y configura la ventana principal en el constructor de la clase Calculadora.

public Calculadora() {
    super("Calculadora"); // Título de la ventana
    setSize(400, 400); // Tamaño de la ventana
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Comportamiento al cerrar
    setLayout(new BorderLayout()); // Layout principal

    // Inicializa la pantalla
    pantalla = new JTextField();
    add(pantalla, BorderLayout.NORTH);

    // Inicializar paneles
    panelNumeros = new JPanel();
    panelOperaciones = new JPanel();

    // Configurar layout de los paneles
    panelNumeros.setLayout(new GridLayout(5, 3));
    panelOperaciones.setLayout(new GridLayout(5, 1));

    // Añadir botones a los paneles
    initBotonesNumeros();
    initBotonesOperaciones();

    // Añadir paneles a la ventana principal
    add(panelNumeros, BorderLayout.CENTER);
    add(panelOperaciones, BorderLayout.EAST);
}

Paso 5: Inicializar Botones

Crea métodos initBotonesNumeros() y initBotonesOperaciones() para inicializar los botones y añadirlos a sus respectivos paneles.

private void initBotonesNumeros() {
    for (int i = 0; i < 10; i++) {
        botonesNumeros[i] = new JButton(String.valueOf(i));
        panelNumeros.add(botonesNumeros[i]);
    }
}

private void initBotonesOperaciones() {
    btnSuma = new JButton("+");
    btnResta = new JButton("-");
    btnMultiplica = new JButton("*");
    btnDivide = new JButton("/");
    btnIgual = new JButton("=");
    btnBorrar = new JButton("C");

    // Añadir botones al panel de operaciones
    panelOperaciones.add(btnSuma);
    panelOperaciones.add(btnResta);
    panelOperaciones.add(btnMultiplica);
    panelOperaciones.add(btnDivide);
    panelOperaciones.add(btnIgual);
    panelOperaciones.add(btnBorrar);
}

Paso 6: Agregar Eventos a los Botones

Añade listeners a los botones para manejar las acciones de usuario. Puedes hacer esto implementando ActionListener y sobrescribiendo el método actionPerformed.

private void addActionListeners() {
    // Ejemplo para el botón 1
    botonesNumeros[1].addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            pantalla.setText(pantalla.getText() + "1");
        }
    });
    // Agrega listeners similares para los demás botones
}

Paso 7: Lógica de la Calculadora

Implementa la lógica para realizar las operaciones matemáticas

. Esto puede involucrar mantener un estado de la operación actual y un valor acumulado, y luego realizar la operación correspondiente cuando el usuario presiona el botón =.

Paso 8: Ejecutar la Aplicación

Finalmente, añade un método main para hacer que tu aplicación sea ejecutable.

public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable() {
        public void run() {
            new Calculadora().setVisible(true);
        }
    });
}

Este es un esquema básico para empezar con tu calculadora en Java usando Swing. Puedes expandir este proyecto añadiendo más funcionalidades, como operaciones avanzadas (raíz cuadrada, potenciación), mejorando la interfaz de usuario o añadiendo la capacidad de realizar cálculos con decimales. La clave es experimentar y aprender más sobre cómo Swing facilita la creación de interfaces gráficas de usuario en Java.

computer c code
Photo by Pixabay on Pexels.com

Gracias por visitar mi blog de informática, mi nombre es Tomás y soy formador y desarrollador web. Si quiere usted dejarme alguna sugerencia, ayuda o quiere un servicio de formación estoy escuchando ofertas en tomas.gonzalez@infogonzalez.com, en Facebook a https://www.facebook.com/Infogonzalez estoy deseando escucharle. Su duda o sugerencia NO molesta.

Deja un comentario

Información básica sobre protección de datos Ver más

  • Responsable: Tomas Gonzalez.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

error: Content is protected !!

Descubre más desde InfoGonzalez - Blog de formador e informático

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Seguir leyendo

Este sitio web utiliza cookies, si necesitas más información puedes visitar nuestra política de privacidad    Ver
Privacidad