Advertisement
WupEly

Untitled

Oct 3rd, 2022
40
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.56 KB | None | 0 0
  1. import sys
  2. import math
  3. from PyQt5 import QtWidgets
  4. import ui
  5.  
  6.  
  7. class ExampleApp(QtWidgets.QMainWindow, ui.Ui_Form):
  8. def __init__(self):
  9. # Это здесь нужно для доступа к переменным, методам
  10. # и т.д. в файле design.py
  11. super().__init__()
  12. self.setupUi(self) # Это нужно для инициализации нашего дизайна
  13.  
  14. self.btn1.clicked.connect(lambda: self.btn1_action(btn=self.btn1))
  15. self.btn2.clicked.connect(lambda: self.btn1_action(btn=self.btn2))
  16. self.btn3.clicked.connect(lambda: self.btn1_action(btn=self.btn3))
  17. self.btn4.clicked.connect(lambda: self.btn1_action(btn=self.btn4))
  18. self.btn5.clicked.connect(lambda: self.btn1_action(btn=self.btn5))
  19. self.btn6.clicked.connect(lambda: self.btn1_action(btn=self.btn6))
  20. self.btn7.clicked.connect(lambda: self.btn1_action(btn=self.btn7))
  21. self.btn8.clicked.connect(lambda: self.btn1_action(btn=self.btn8))
  22. self.btn9.clicked.connect(lambda: self.btn1_action(btn=self.btn9))
  23. self.btn0.clicked.connect(lambda: self.btn1_action(btn=self.btn0))
  24. self.btn_clear.clicked.connect(self.btn_clear_action)
  25. self.btn_sqrt.clicked.connect(self.sqrt_action)
  26. self.btn_minus.clicked.connect(self.minus_action)
  27. self.btn_eq.clicked.connect(self.eq_action)
  28.  
  29. def btn1_action(self, btn):
  30. if self.table.value() != 0:
  31. self.table.display(str(self.table.intValue()) + btn.text())
  32. else:
  33. self.table.display(btn.text())
  34.  
  35. def btn_clear_action(self):
  36. self.table.display(0)
  37.  
  38. def sqrt_action(self):
  39. self.table.display(math.sqrt(self.table.value()))
  40.  
  41. def minus_action(self):
  42. self.btn_minus.setEnabled(False)
  43. self.previous_num = self.table.value()
  44. self.table.display(0)
  45.  
  46. def eq_action(self):
  47. if not self.btn_minus.isEnabled():
  48. self.table.display(self.previous_num - self.table.value())
  49. self.btn_minus.setEnabled(True)
  50.  
  51.  
  52. def main():
  53. app = QtWidgets.QApplication(sys.argv) # Новый экземпляр QApplication
  54. window = ExampleApp() # Создаём объект класса ExampleApp
  55. window.show() # Показываем окно
  56. app.exec_() # и запускаем приложение
  57.  
  58.  
  59. if __name__ == '__main__': # Если мы запускаем файл напрямую, а не импортируем
  60. main() # то запускаем функцию main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement