Python Curso V2: 402 4/4 Calculadora Básica con Interfaz Gráfica de Usuario (GUI) con PyQt5

preview_player
Показать описание

402. 4/4 Calculadora Básica con Interfaz Gráfica de Usuario (GUI) con PyQt5 con el lenguaje de programación Python.
Рекомендации по теме
Комментарии
Автор

Ante todo muchas gracias por tu tiempo y por tus claras explicaciones. Llevo ya varias semanas, si semanas, batallando con el dichoso QDoubleValidator. He llegado a tu curso gracias a él. El ejemplo que has hecho no filtra las ", " . Las deja pasar sin problema y es en el momento de la conversión a float() cuando la aplicación salta. ¿Es que no se puede filtrar la coma para que QDoubleValidator no la acepte?. Sin crear otra clase derivada de ella. Gracias por tu respuesta. Saludos desde Barcelona.

ricardomp
Автор

Hola john, hice este ejercicio antes de ver tu solución y funciona perfecto pero mientras lo hacia me surgió una duda.
En la parte del método suma yo tengo dos métodos auxiliares uno que comprueba si algo es un float y otro que muestra los mensajes de advertencia, uno de ellos es un método de clase y el otro es de instancia, mi duda seria ¿Cuándo un método debe ser de instancia y cuando de clase hay alguna pauta a seguir?

adjunto esa seccion del codigo:

def sumar(self):
primer_numero =
primer_numero = primer_numero.replace(", ", ".")
segundo_numero =
segundo_numero = segundo_numero.replace(", ", ".")

if not
self.showWarning("El primer campo debe contener un numero")
return
if not
self.showWarning("El segundo campo debe contener un numero")
return

resultado = str(float(primer_numero) + float(segundo_numero))


def is_float(numero:str):
try:
float(numero)
return True
except ValueError:
return False

def show_warning(self, mensaje):
mensaje_ventana = QMessageBox()




mensaje_ventana.exec_()

francoamori