👉博__主👈:米码收割机
👉技__能👈:C++/Python语言
👉公众号👈:测试开发自动化【获取源码+商业合作】
👉荣__誉👈:阿里云博客专家博主、51CTO技术博主
👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。
功能展示
1)查看游戏规则
点击右侧阅读游戏规则按钮,可查看游戏规则。
源码关注【测试开发自动化】公众号,回复“五子棋”获取。
2)提示玩家1开始走棋
游戏开始时,玩家1开始走棋子。
3)提示玩家2走棋
玩家1走完以后,玩家2开始走棋子。
4)提示玩家1走棋
玩家2走完以后,玩家1开始走棋子。
5)玩家1胜利
当满足游戏规则时,提示对应的玩家胜利,对应玩家的分数+1。
源码关注【测试开发自动化】公众号,回复“五子棋”获取。
6)重新开始
点击重新开始按钮,所有玩家分数清0,重新开始游戏。
二、部分代码
部分代码如下:
源码关注【测试开发自动化】公众号,回复“五子棋”获取。
import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QMessageBox, QVBoxLayout, QHBoxLayout, QLabel from PyQt5.QtGui import QPainter, QPen, QColor from PyQt5.QtCore import Qt from PyQt5.QtGui import QFont, QPalette GRID_SIZE = 30 BOARD_SIZE = 15 class FiveInARow(QWidget): def __init__(self): super().__init__() self.board = [[0 for _ in range(BOARD_SIZE)] for _ in range(BOARD_SIZE)] self.current_player = 1 self.scores = {1: 0, 2: 0} self.initUI() def initUI(self): layout = QHBoxLayout() # Board self.board_widget = QWidget(self) self.board_widget.setFixedSize(GRID_SIZE * BOARD_SIZE, GRID_SIZE * BOARD_SIZE) layout.addWidget(self.board_widget) # Sidebar layout sidebar_layout = QVBoxLayout() self.title_label = QLabel("欢迎进入开心五子棋") sidebar_layout.addWidget(self.title_label) rules_btn = QPushButton("阅读游戏规则", self) rules_btn.clicked.connect(self.show_rules) sidebar_layout.insertWidget(1, rules_btn)