Advertisement
Guest User

Untitled

a guest
May 22nd, 2022
27
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. from PyQt5.QtWidgets import QMessageBox
  2.  
  3. class Calculator:
  4. def __init__(self, dict):
  5. self.plus = dict["plus"]
  6. self.minus = dict["minus"]
  7. self.multi = dict["multi"]
  8. self.dele = dict["dele"]
  9. self.result = dict["result"]
  10. self.number_one = dict["number_one"]
  11. self.number_two = dict["number_two"]
  12.  
  13. self.start()
  14.  
  15. def start(self):
  16. self.plus.clicked.connect(self.test)
  17. self.minus.clicked.connect(self.minus_func)
  18. self.multi.clicked.connect(self.multi_func)
  19. self.dele.clicked.connect(self.dele_func)
  20.  
  21. def test(self):
  22. print("Hello, world!")
  23.  
  24. def popup_action(self, button):
  25. print(button.toPlainText())
  26.  
  27. def plus_func(self):
  28. try:
  29. result = int(self.number_one.toPlainText()) + int(self.number_two.toPlainText())
  30. self.result.setText(str(result))
  31. except ValueError:
  32. err = QMessageBox()
  33.  
  34. err.setWindowTitle("Ошибка")
  35. err.setText("Сейчас это действите выполнить нельзя")
  36. err.setIcon(QMessageBox.Warning)
  37. err.setStandardButtons(QMessageBox.Ok | QMessageBox.Cancel)
  38. err.setDefaultButton(QMessageBox.Cancel)
  39. err.setInformativeText("Два раза срака")
  40. err.setDetailedText("Детальное описание ошибки")
  41.  
  42. err.exec_()
  43.  
  44. def minus_func(self):
  45. result = int(self.number_one.toPlainText()) - int(self.number_two.toPlainText())
  46. self.result.setText(str(result))
  47.  
  48. def multi_func(self):
  49. result = int(self.number_one.toPlainText()) * int(self.number_two.toPlainText())
  50. self.result.setText(str(result))
  51.  
  52. def dele_func(self):
  53. result = int(self.number_one.toPlainText()) / int(self.number_two.toPlainText())
  54. self.result.setText(str(result))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement