Advertisement
Guest User

Untitled

a guest
Jun 19th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.10 KB | None | 0 0
  1. import sys
  2.  
  3. from PyQt5 import uic, QtCore, QtGui
  4.  
  5. Qt = QtCore.Qt
  6.  
  7. try:
  8. _encoding = QtGui.QApplication.unicodeUTF8
  9. def _translate(context,text,disambig):
  10. return QtGui.QApplication.translate(context,text,disambig, _encoding)
  11. except AttributeError:
  12. def _translate(context, text, disambig):
  13. return QtGui.QApplication.translate(context, text ,disambig)
  14.  
  15. class MyWindow(QtGui.QtWidget):
  16. def __init__(self):
  17. super(MyWindow, self).__init__()
  18. uic.loadUi('calculadora.ui', self)
  19. self.connect(btn0,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('0'))
  20. self.connect(btn1,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('1'))
  21. self.connect(btn2,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('2'))
  22. self.connect(btn3,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('3'))
  23. self.connect(btn4,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('4'))
  24. self.connect(btn5,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('5'))
  25. self.connect(btn6,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('6'))
  26. self.connect(btn7,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('7'))
  27. self.connect(btn8,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('8'))
  28. self.connect(btn9,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('9'))
  29. self.connect(btn9,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('/'))
  30. self.connect(btn9,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('-'))
  31. self.connect(btn9,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('+'))
  32. self.connect(btn9,QtCore.SIGNAL('clicked()'),lambda:self.aniadir('*'))
  33. self.connect(btn9,QtCore.SIGNAL('clicked()'),self.evaluar)
  34. self.show()
  35.  
  36. def aniadir (self, que):
  37. actual = self.QLineEdit.text()
  38. self.QLineEdit.setText(actual+que)
  39.  
  40. def evaluar(self):
  41. expr = self.QLineEdit.text()
  42. resultado = eval(str(expr))
  43. if type (resultado) in [float, int]:
  44. self.QLineEdit.setText(str(resultado))
  45.  
  46. if __name__ == '__main__':
  47. app = QtGui.QApplication(sys.argv)
  48. window = MyWindow()
  49. sys.exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement