跳至正文
View Categories

< 1 min read

主要内容 #

  • 游戏介绍
  • 功能解构
  • 界面设计
  • 1. 游戏介绍 #

    猜数字游戏是简单且益智的游戏,能锻炼我们的二分逻辑思维。

    该游戏的主要玩法是程序随机生成一个数字,玩家每次猜测一个数字,
    然后程序判断玩家猜测的数字比程序生成的数字是大还是小。
    如果玩家猜测的数字和程序随机生成的数字一样,则表示成功。
    这期间玩家通过不断地尝试和放缩,最终猜出正确答案。

    2. 功能解构 #

    根据游戏规则,对游戏的功能进行解构,具体如下:

    • 1,界面:需要一个文本输入框(QLineEdit),用于玩家输入数字。
    • 2,界面:需要一个按钮(QPushButton),用于提交输入的数字。
    • 3,界面:需要一个消息框(QMessageBox),用于显示当前输入的判断情况。
    • 4,功能:需要一个生成随机整数的模块,且在猜数字成功之后立即重新生成新的随机整数。
    • 5,功能:需要一个自定义判断模块,用于按钮提交的数字和生成的随机数做比较。

    3. 界面设计 #

    首先,需要添加文本输入框,按钮和消息框。

    import sys
    from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QMessageBox, QLineEdit
    
    
    class GuessGame(QWidget):
        def __init__(self):
            super().__init__()
            self.initUI()
    
        def initUI(self):
            self.guessQPushBtn = QPushButton('猜一猜', self) # 添加按钮
            self.guessQPushBtn.setGeometry(115, 150, 70, 30) #  按钮位置
    
            self.numQLineEdit = QLineEdit('在这里输入数字', self) #  添加文本框
            self.numQLineEdit.selectAll() #  自动全选上一行代码的字符串‘在这里输入数字’,以方便输入
            self.numQLineEdit.setFocus() #  将焦点置于文本栏中,方便输入
            self.numQLineEdit.setGeometry(80, 50, 150, 30) #  文本框位置
    
            self.setGeometry(200, 200, 500, 500)
            self.setWindowTitle('猜一猜小游戏')
            self.show()
    
    
    app = QApplication(sys.argv)
    ex = GuessGame()
    app.exec_()

    4. 小结 #

    • 猜数字游戏是简单且益智的游戏
    • 根据游戏玩法可以将游戏解构,方便后续实现
    • 猜数字游戏需要文本框,按钮,消息框等控件

    习题 #