PyQt5 | Creación de interfaces gráficas

Posted by

Ejemplo: calculadora | Interfaces gráficas con PyQt5

Ejemplo: calculadora con PyQt5

En este artículo, vamos a crear una calculadora simple utilizando la biblioteca PyQt5 para crear interfaces gráficas en Python.

Prerrequisitos

Antes de seguir adelante, debes asegurarte de tener instalada la biblioteca PyQt5 en tu entorno de Python. Puedes instalarla ejecutando el siguiente comando en tu terminal:


pip install PyQt5

Código de ejemplo

A continuación se muestra el código de ejemplo para crear una calculadora simple con PyQt5:


import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton, QLineEdit

class Calculator(QWidget):
def __init__(self):
super().__init__()

self.initUI()

def initUI(self):
self.setWindowTitle('Calculadora')
self.setGeometry(100, 100, 300, 200)

layout = QVBoxLayout()

self.input_box = QLineEdit()
layout.addWidget(self.input_box)

buttons = [
'7', '8', '9', '/',
'4', '5', '6', '*',
'1', '2', '3', '-',
'C', '0', '=', '+'
]

for btn_text in buttons:
btn = QPushButton(btn_text)
btn.clicked.connect(self.on_button_click)
layout.addWidget(btn)

self.setLayout(layout)

def on_button_click(self):
button = self.sender()
if button.text() == '=':
result = str(eval(self.input_box.text()))
self.input_box.setText(result)
elif button.text() == 'C':
self.input_box.setText('')
else:
current_text = self.input_box.text()
new_text = current_text + button.text()
self.input_box.setText(new_text)

if __name__ == '__main__':
app = QApplication(sys.argv)
calc = Calculator()
calc.show()
sys.exit(app.exec())

Este código crea una ventana de aplicación con una caja de entrada de texto y botones para números y operaciones matemáticas. Cuando se hace clic en los botones, se actualiza la caja de entrada con los números o operadores correspondientes. El botón ‘=’ realiza el cálculo y muestra el resultado en la caja de entrada.

Conclusión

Crear interfaces gráficas con PyQt5 en Python es relativamente simple y puede ser extremadamente útil para crear aplicaciones con interfaces de usuario intuitivas. Este ejemplo de calculadora es solo un punto de partida; con PyQt5, las posibilidades son infinitas para crear interfaces gráficas personalizadas para tus aplicaciones.