from tkinter import *
window = Tk()
#画棋盘
canvas = Canvas(window, bg = "Khaki", width = 480, height = 480)
canvas.grid(row = 0, column = 0, rowspan = 10)
#画线条
for i in range(15):
canvas.create_line(30, (30 * i + 30), 450, (30 * i + 30))
canvas.create_line((30* i + 30), 30, (30 * i + 30), 450)
#画五个小点
point_x = [3, 3, 11, 11, 7]
point_y = [3, 11, 3, 11, 7]
for i in range(5):
canvas.create_oval(30 * point_x[i] + 27, 30 * point_y[i] + 27,
30 * point_x[i] + 33, 30 * point_y[i] + 33, fill = "black")
#设置必要参数
r = 10
click_x=0 #定义x轴坐标
click_y=0 #定义y轴坐标
piece_color = "black" #定义piece_color,没有这一步后面会报错它未定义
person_flag = 1 #定义一个标志,使黑白棋交换落子
a_flag = 0 #当一方获胜后,无法在棋盘上点击
mouse_black = [] #对黑子坐标存储列表置空
mouse_white = [] #对白子坐标存储列表置空
mouse = [] #对棋子(黑白)坐标存储列表置空
#返回鼠标位置
def mouseBack(event):
global click_x, click_y
click_x = event.x
click_y = event.y
mouseJudge()
#单击左键,返回当前位置
canvas.bind("<Button-1>",mouseBack)
#使落点在交叉点处
def mouseJudge():
global click_x, click_y, person_flag, mouse
mouse = mouse_black + mouse_white #将棋子(黑白)坐标全部存进去
i=0
j=0
while click_x > (30+15*i): #确定鼠标点击位置所在的格子
i+=1
while click_y > (30+15*j):
j+=1
if ((i%2)==1 and (j%2)==1): #将一个格子分成四个区域,根据鼠标点击位置所在区域分得格子的顶点
click_x=30+15*(i-1)
c
简易五子棋单机版(tkinter)
最新推荐文章于 2024-06-23 12:43:50 发布
本文介绍如何使用Python的Tkinter库创建一个简易的五子棋单机版游戏。通过这个项目,你可以了解图形用户界面(GUI)编程基础和简单的游戏逻辑实现。
摘要由CSDN通过智能技术生成