En esta oportunidad quiero que mi programa haga dos calculos comprobando si se cumple las siguientes condiciones Si la longitud de las entradas QlineEdit:
resSTd, accSTD, UncSTD, repUUT, resUUT
es 0 me diga que "Faltan datos"
Si las mismas entradas estan llenas excepto la entrada de RepUUT, que estara en estado disable (desactivadad) hasta que check button se aplique Haga un calculo sin tomar esa entrada
si todas las entradas estan llenas, entoces que realice los calculos tomando los valores de todas las entradas.
def Condition1(self):
return len(self.resUUT.text()) != 0 and len(self.resSTD.text()) != 0 and len(self.accSTD.text()) != 0 and len(self.repUUT.text()) > 0
def Condition2(self):
return len(self.resUUT.text()) != 0 and len(self.resSTD.text()) != 0 and len(self.accSTD.text()) != 0 and len(self.repUUT.text()) ==0
Con el Siguiente Codigo
def calcular(self):
if self.Condition1() :
x = float(self.resSTD.text()) / math.sqrt(3)
y = float(self.accSTD.text()) / math.sqrt(3)
z = float(self.uncSTD.text()) / float(2)
u = float(self.resUUT.text()) / math.sqrt(3)
v1 = float(self.repUUT.text())
Rs = math.sqrt((x ** 2) + (y ** 2) + (z ** 2) + (u ** 2) + (v1 ** 2))
RsExp = Rs * 2
ResText = str(RsExp)
self.resultado.setText(ResText)
if self.Condition1 ():
x = float(self.resSTD.text()) / math.sqrt(3)
y = float(self.accSTD.text()) / math.sqrt(3)
z = float(self.uncSTD.text()) / float(2)
u = float(self.resUUT.text()) / math.sqrt(3)
v = float(self.resUUT.text()) / float(2)
Rs = math.sqrt((x ** 2) + (y ** 2) + (z ** 2) + (u ** 2) + (v ** 2))
RsExp = Rs * 2
ResText = str(RsExp)
self.resultado.setText(ResText)
else:
self.resultado.setText("Faltan DaTos")
Y La Que Obtengo al Realizar el calculo es se cumple una condicion pero en otro caso solo se cumple else