使用Python中的Tkinter制作颜色游戏
对于开发GUI应用程序,tkinter非常受欢迎且易于使用。使用tkinter轻松开发GUI游戏。
在这里,我们也正在尝试开发颜色游戏。在此游戏中,玩家必须输入屏幕上显示的字词的颜色,因此得分增加1分,玩此游戏的总时间为30秒,该游戏使用的颜色为红色、蓝色、绿色、粉色、黑色、黄色、橙色、白色、紫色和棕色。接口会用不同颜色的名称显示不同的颜色。用户必须确认颜色并输入正确的颜色名称以赢得游戏。
代码示例
import tkinter
import random
# 颜色列表
my_colours = ['Red','Blue','Green','Pink','Black','Yellow','Orange','White','Purple','Brown']
my_score = 0
my_timeleft = 30
def my_startGame(event):
if my_timeleft == 30:
# 启动倒计时计时器
my_countdown()
my_nextColour()
def my_nextColour():
global my_score
global my_timeleft
# 如果当前正在进行游戏
if my_timeleft > 0:
e.focus_set()
if e.get().lower() == my_colours[1].lower():
my_score += 1
# 清除文本输入框
e.delete(0, tkinter.END)
random.shuffle(my_colours)
label.config(fg = str(my_colours[1]), text = str(my_colours[0]))
# 更新得分
my_scoreLabel.config(text = "得分:" + str(my_score))
# 倒计时计时器函数
def my_countdown():
global my_timeleft
# 如果游戏正在进行中
if my_timeleft > 0:
# 减少计时器
my_timeleft -= 1
# 更新剩余时间标签
timeLabel.config(text = "剩余时间:" + str(my_timeleft))
# 1秒后再次运行该函数
timeLabel.after(1000, my_countdown)
# 主程序代码
root = tkinter.Tk()
root.title("颜色游戏")
root.geometry("375x200")
my_instructions = tkinter.Label(root, text = "键入颜色" "而不是单词文本的颜色!",
font = ('Helvetica', 12))
my_instructions.pack()
my_scoreLabel = tkinter.Label(root, text = "按Enter键开始游戏",
font = ('Helvetica', 12))
my_scoreLabel.pack()
my_timeLabel = tkinter.Label(root, text = "剩余时间:" +
str(my_timeleft), font = ('Helvetica', 12))
my_timeLabel.pack()
label = tkinter.Label(root, font = ('Helvetica', 60))
label.pack()
e = tkinter.Entry(root)
root.bind('<Return>', my_startGame)
e.pack()
e.focus_set()
# 启动GUI
root.mainloop()
Python