Guest User

Untitled

a guest
Jan 23rd, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 0 0
  1. from PySide.QtCore import *
  2. from PySide.QtGui import *
  3. import sys
  4. import random
  5.  
  6. MAX_GUESSES = 10
  7.  
  8. class MyWindow(QWidget):
  9. def __init__(self):
  10. QWidget.__init__(self, None)
  11.  
  12. self.totalGuesses = 0
  13. self.chosenNumber = random.randint(1, 100)
  14.  
  15. #Create Textboxes
  16. self.txtInput = QLineEdit()
  17. self.txtOutput = QTextEdit("Guess my number...")
  18.  
  19. #Create button
  20. self.btnGuess = QPushButton("Ok")
  21. self.btnGuess.clicked.connect(self.checkNumber)
  22.  
  23. self.createLayout()
  24.  
  25. def createLayout(self):
  26. inputBoxLayout = QHBoxLayout()
  27. inputBoxLayout.addWidget(self.txtInput)
  28. inputBoxLayout.addWidget(self.btnGuess)
  29.  
  30. mainLayout = QVBoxLayout()
  31. mainLayout.addLayout(inputBoxLayout)
  32. mainLayout.addWidget(self.txtOutput)
  33.  
  34. self.setLayout(mainLayout)
  35.  
  36. def checkNumber(self):
  37. numberGuessed = int(self.txtInput.text())
  38. self.totalGuesses += 1
  39.  
  40. if numberGuessed == self.chosenNumber:
  41. self.txtOutput.append("You won! My number was %s" % numberGuessed)
  42. self.btnGuess.setEnabled(False)
  43. elif numberGuessed < self.chosenNumber:
  44. self.txtOutput.append("Higher than %s!" % numberGuessed)
  45. else:
  46. self.txtOutput.append("Lower than %s" % numberGuessed)
  47.  
  48. if self.totalGuesses == MAX_GUESSES:
  49. self.txtOutput.append("You lose! The number was %s" % self.chosenNumber)
  50. self.btnGuess.setEnabled(False)
  51.  
  52. app = QApplication(sys.argv)
  53.  
  54. win = MyWindow()
  55. win.show()
  56.  
  57. app.exec_()
  58. sys.exit()
Add Comment
Please, Sign In to add comment