首页 > 编程语言 >Python小项目:利用tkinter开发测手速小游戏

Python小项目:利用tkinter开发测手速小游戏

时间:2023-08-19 12:34:47浏览次数:63  
标签:__ 测手速 tkinter Python self var1 root page def

在这里插入图片描述

1 简介

利用tkinter开发测手速的小游戏,大家10s内可以点击鼠标多少次呢?想测试一下吗?来试试测手速下游戏吧!仅供娱乐! 试玩视频:视频链接

游戏截图:

在这里插入图片描述

2 代码分模块介绍

2.1 导入需要的包

from tkinter import *
from tkinter.messagebox import *

2.2 定义全局变量

def __init__(self, master=None):
        self.root = master  # 定义内部变量root
        self.root.title('测手速游戏')
        self.root.geometry('%dx%d' % (600, 400))  # 设置窗口大小
        self.var1 = StringVar()
        self.var1.set("点击了0次")
        self.var2 = StringVar()
        self.var2.set("总共有10秒的时间")
        self.ini = 0
        self.createPage()

2.3 定义页面组件类

def createPage(self):
        self.page = Frame(self.root)  # 创建Frame
        self.page.pack()
        l1 = Label(self.page, textvariable=self.var1, width=15, height=1)
        l1.pack()
        b = Button(self.page, text="使劲点", width=15, height=2, command=self.add)
        b.pack()
        l2 = Label(self.page, textvariable=self.var2, width=25, height=1)
        l2.pack()
        self.page.after(10000, self.jump_to)

2.4 定义增加类

用户每点一次记录增加一次~

def add(self):
        self.ini += 1
        self.var1.set("点击了" + str(self.ini) + "次")

2.5 定义结束类

10s结束后可结束游戏~

def jump_to(self):
        self.page.destroy()
        print(self.ini)

3 整体代码展示

from tkinter import *
from tkinter.messagebox import *

class game3_page(object):
    def __init__(self, master=None):
        self.root = master  # 定义内部变量root
        self.root.title('测手速游戏')
        self.root.geometry('%dx%d' % (600, 400))  # 设置窗口大小
        self.var1 = StringVar()
        self.var1.set("点击了0次")
        self.var2 = StringVar()
        self.var2.set("总共有10秒的时间")
        self.ini = 0
        self.createPage()


    def createPage(self):
        self.page = Frame(self.root)  # 创建Frame
        self.page.pack()
        l1 = Label(self.page, textvariable=self.var1, width=15, height=1)
        l1.pack()
        b = Button(self.page, text="使劲点", width=15, height=2, command=self.add)
        b.pack()
        l2 = Label(self.page, textvariable=self.var2, width=25, height=1)
        l2.pack()
        self.page.after(10000, self.jump_to)

    def add(self):
        self.ini += 1
        self.var1.set("点击了" + str(self.ini) + "次")
        

    def jump_to(self):
        self.page.destroy()
        print(self.ini)


    
if __name__ == "__main__":
    root = Tk()
    root.title('测手速')
    game3_page(root)
    root.mainloop()

在这里插入图片描述

4 结语

这个小项目将为您带来一段快乐的时光!通过使用tkinter库,我们开发了一个简单而有趣的测手速小游戏,挑战您的反应速度和点击能力。无论是放松娱乐还是与朋友一较高下,这个小游戏都会给您带来愉悦的体验。现在就来尝试,在10秒内点击鼠标多少次,创造您的最佳成绩吧!

在这里插入图片描述

标签:__,测手速,tkinter,Python,self,var1,root,page,def
From: https://blog.51cto.com/u_15229916/7148234

相关文章

  • python列表添加元素
    列表添加元素df_test=pd.DataFrame({'a':[1,2],'b':[3,None]})df_test.columns+'c'#每个元素拼接'c'!不能直接添加元素!['a','b']+['c']#不能每个元素拼接,也不能直接加字符串,需要列表+列表进行扩展,且append输出为None#np.array不......
  • Python通过matplotlib包和gif包生成gif动画
    ✅作者简介:热爱科研的算法开发者,Python、Matlab项目可交流、沟通、学习。......
  • python DLL load failed while importing numpy_ops 异常
    安装https://aka.ms/vs/17/release/vc_redist.x64.exe原文章地址:ImportError:DLLloadfailedwhileimportingnumpy_ops:Thespecifiedmodulecouldnotbefound·Issue#2773·Significant-Gravitas/Auto-GPT·GitHub......
  • Python程序员Visual Studio Code指南2 Hello World
    2HelloWorld2.1安装Python扩展VisualStudioCode的Python扩展提供了对Python语言的支持,包括语法着色、代码补全、过滤、调试、代码导航和代码格式化等功能,以及JupyterNotebook支持等Python特有的功能。您可以在VisualStudioCode的扩展视图中安装Python扩展。与从扩展市......
  • 在Python中,当你调用一个类的方法时,需要将类的实例作为第一个参数传递给方法。 括号
    classClass_test:def__init__(self):pass#若无则报错AttributeError:'Class_test'objecthasnoattribute'fun_zip'deffun_zip(self,df_arg=pd.DataFrame(),bool_arg=False):#......
  • Python 抽象类和抽象方法
    Python抽象类和抽象方法Python通过继承abc模块中的ABC来实现抽象类,通过abc模块的abstractmethod装饰抽象方法示例fromenumimportEnumfromabcimportABC,abstractmethodclassShapeType(Enum):RECTANGLE=1SQUARE=2classShape(ABC):d......
  • Python提取函数参数 inspect​​​模块
    1解析为字典https://blog.csdn.net/tutan123321/article/details/131319113defprint_params(**params):forkey,valueinparams.items():print(key+":"+str(value))2 __code__https://blog.csdn.net/weixin_44224529/article/details/1212588953i......
  • python+playwright 学习-71 expect 断言设置timeout 超时和自定义错误内容
    前言playwright提供了一个expect方法用于断言,还可以设置超时时间。expect使用断言描述expect(locator).to_be_checked()Checkboxischeckedexpect(locator).to_be_disabled()Elementisdisabledexpect(locator).to_be_editable()Elementisenabled......
  • linux环境下基于python的OpenCV 保存视频
    一概念在OpenCV中保存视频使用的是VedioWriter对象,在其中指定输出文件的名称,A创建视频写入的对象out=cv2.VideoWriter(filename,fourcc,fps,frameSize)参数含义:filename:视频保存的位置fourcc:指定视频编解码器的4字节代码fps:帧率frameSize:帧大小B 设置视频的编解......
  • Base64及其Python实现
    1.什么是Base64Base64是一种基于64个可打印字符来表示二进制数据的表示方法Base64是一种编码方式,提及编码方式,必然有其对应的字符集合。在Base64编码中,相互映射的两个集合是:二进制数据{0,1}{A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,......