Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2019
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.20 KB | None | 0 0
  1. import sys
  2. from PyQt5 import uic
  3. from PyQt5.Qt import QMainWindow, QApplication, QIcon, QLabel, QPixmap
  4. from functions import *
  5. from globals import *
  6.  
  7.  
  8. class Game(QMainWindow):
  9. def __init__(self):
  10. super().__init__()
  11. uic.loadUi('window.ui', self)
  12. self.buttons_list = ['b_1', 'b_2', 'b_3', 'b_4', 'b_5']
  13. for buttons_counter_1 in range(len(self.buttons_list)):
  14. exec(f"self.{self.buttons_list[buttons_counter_1]}.clicked.connect(self.btn_click)")
  15.  
  16. self.apple = QIcon("images/apple.png")
  17. self.apple_stub = QIcon("images/apple_stub.png")
  18. self.apple_selected = QIcon("images/apple_selected.png")
  19. self.apple_stub_selected = QIcon("images/apple_stub_selected.png")
  20.  
  21. self.pixmap_apple = QPixmap("images/apple.png")
  22. self.pixmap_apple_stub = QPixmap("images/apple_stub.png")
  23. self.pixmap_apple_selected = QPixmap("images/apple_selected.png")
  24. self.pixmap_apple_stub_selected = QPixmap("images/apple_stub_selected.png")
  25.  
  26. def btn_click(self):
  27. if current_level <= 10:
  28. generate_true_values = 4
  29. elif 10 < current_level <= 20:
  30. generate_true_values = 3
  31. elif 20 < current_level <= 30:
  32. generate_true_values = 2
  33. else:
  34. generate_true_values = 1
  35.  
  36. sender = self.sender().objectName()
  37. generated_list = generate(generate_true_values)
  38. false_answers = []
  39. true_answers = []
  40.  
  41. for item in generated_list:
  42. exec(f"b_{item} = self.b_{item}")
  43.  
  44. for button in self.buttons_list:
  45. try:
  46. exec(button)
  47. true_answers.append(button)
  48. except:
  49. false_answers.append(button)
  50.  
  51. for answer in false_answers:
  52. if sender == answer:
  53. for true_answer in true_answers:
  54. exec(f"self.{true_answer}.setIcon(self.apple)")
  55. for false_answer in false_answers:
  56. exec(f"self.{false_answer}.setIcon(self.apple_stub)")
  57. if sender in true_answers:
  58. exec(f"self.{sender}.setIcon(self.apple_selected)")
  59. else:
  60. exec(f"self.{sender}.setIcon(self.apple_stub_selected)")
  61. break
  62. else:
  63. for true_answer in true_answers:
  64. exec(f"self.{true_answer}.setIcon(self.apple)")
  65. for false_answer in false_answers:
  66. exec(f"self.{false_answer}.setIcon(self.apple_stub)")
  67. exec(f"self.{sender}.setIcon(self.apple_selected)")
  68.  
  69. for button_counter in range(len(self.buttons_list)):
  70. exec(f"self.button_label_{button_counter + 1} = QLabel(self)")
  71. exec(f"self.button_label_{button_counter + 1}.show()")
  72. exec(f"self.button_label_{button_counter + 1}.setFixedSize(64,64)")
  73. cords = eval(f"self.{self.buttons_list[button_counter]}.pos()")
  74. exec(f"self.button_label_{button_counter + 1}.move({cords.x()}, {cords.y()} - 74)")
  75.  
  76. if __name__ == "__main__":
  77. app = QApplication(sys.argv)
  78. ex = Game()
  79. ex.show()
  80. sys.exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement