猜一猜
#导入需要的模块
import sys
from PyQt5.QtWidgets import QApplication,QWidget,QPushButton,QMessageBox,QLineEdit
from PyQt5.QtGui import QIcon
from random import randint
class Example(QWidget):
#类初始化,产生0-10的数字
def __init__(self):
super().__init__()
self.initUI()
self.num=randint(1,10)
def initUI(self):
self.setGeometry(300,300,300,220)
self.setWindowTitle("早点毕业")
self.setWindowIcon(QIcon('x.png'))
self.bt=QPushButton('猜',self)#创建一个按钮对象
self.bt.setGeometry(115,150,70,30)
self.bt.setToolTip('点击猜数字')#创建一个工具提示,鼠标停留在按钮上就会实现
self.bt.clicked.connect(self.showMessage)#单击按钮调用showMessage
self.text=QLineEdit('输入数字',self)#创建一个QLineEdit对象
self.text.selectAll()#将‘输入数字’全选,方便输入数字,省了手动删除
self.text.setFocus()#将焦点置于文本蓝中,方便输入
self.text.setGeometry(80,50,150,30)
self.show()
def showMessage(self):
guessnumber=int(self.text.text())
print(self.num)
if guessnumber>self.num:
QMessageBox.about(self,'看结果','大了')#弹出一个对话框,告诉你结果
self.text.setFocus()
elif guessnumber<self.num:
QMessageBox.about(self,'看结果','小了')
self.text.setFocus()
else:
QMessageBox.about(self,'看结果','ok,again')
self.num=randint(1,100)
self.text.clear()
self.text.setFocus()
def closeEvent(self,event):
reply=QMessageBox.question(self,'sure','quit?',QMessageBox.Yes|QMessageBox.No,QMessageBox.No)
if reply==QMessageBox.Yes:
event.accept()
else:
event.ignore()
if __name__ == "__main__":
app = QApplication(sys.argv)
ex=Example()
sys.exit(app.exec_())