⼤佬教你⽤PythonTkinter实现数字猜谜⼩游戏
Tkinter是Python的Tk GUI(图形⽤户界⾯)⼯具包和事实上的标准GUI 的标准接⼝。GUI使您可以使⽤⼤多数操作系统使⽤的可视项(例如窗⼝,图标和菜单)与计算机进⾏交互。这个功能强⼤的⼯具可⽤于构建各种项⽬,并且使可视化代码更加容易。
在本⽂中,我们将了解Tkinter的基础知识以及可在Python应⽤程序中使⽤的不同类型的⼩部件。在本⽂的后⾯,我们将使⽤Tkinter⼩部件开发⼀个很酷的数字猜测游戏。
今天,我们将介绍:
Tkinter的基础
Tkinter的⼩部件与⽰例
从头开始构建数字猜谜游戏
如果⼤家在学习中遇到困难,想⼀个python学习交流环境,可以加⼊我们的python圈,裙号947618024,可领取python学习资料,会节约很多时间,减少很多遇到的难题。
Tkinter的基础
在构建游戏之前,我们需要了解Tkinter的⼀些基础知识。Tkinter软件包是Tk GUI⼯具包的标准python接⼝。我们通常使⽤Tkinter包在应⽤程序中插⼊不同的GUI⼩部件,以使其更加⽤户友好。如果您在Linux,Windows或Mac上使⽤Python,则设备上已经安装了Python Tkinter。
我们如何开发GUI应⽤程序?
创建GUI应⽤程序的基本过程如下:
Import the Tkinter ModuleCreate Main WindowAdd WidgetsEnter Main Loop
使⽤Python开发GUI应⽤程序涉及的步骤:
导⼊tkinter模块。
为我们的GUI应⽤程序创建主窗⼝。
现在,为我们的应⽤程序添加任意数量的⼩部件。
进⼊主事件循环以执⾏我们的主要功能。
现在让我们看看如何创建⼀个简单的tkinter窗⼝:
⾸先,我们将导⼊tkinter模块。它包含构建应⽤程序所需的所有功能,类和其他内容。现在,当我们导⼊模块时,我们需要初始化tkinter。为此,我们创建Tk( )根窗⼝⼩部件。现在,这将创建我们的主GUI窗⼝,我们将在其中添加⼩部件。此时,我们的主窗⼝只有标题栏。
我们应该只为我们的应⽤程序创建⼀个窗⼝,并且必须在添加任何其他⼩部件之前创建该窗⼝。之后,我们使⽤root.mainloop( )。除⾮输⼊,否则不会显⽰我们刚刚创建的主窗⼝mainloop。当我们按下关闭按钮时,我们的程序将退出主循环。在按下关闭按钮之前,我们的应⽤程序将⼀直运⾏。
⽤于创建简单的tkinter窗⼝的代码:
#import required libraries
from tkinter import *
# initialize tkinter :
root = Tk()
# enter the main Loop :
root.mainloop()
复制代码
Tkinter的⼩部件与⽰例
**按钮:**显⽰按钮。
**画布:**绘制形状。
**复选框:**将多个选项显⽰为复选框。
**输⼊:**接受⽤户的单⾏输⼊。
**框架:**组织其他⼩部件。
**标签:**为其他⼩部件添加标题。
**列表框:**向⽤户提供选项列表。
菜单**按钮:**在我们的应⽤程序中显⽰菜单。
**菜单:**向⽤户提供各种命令。
**消息:**显⽰多⾏⽂本字段。
**单选按钮:**将选项数量显⽰为单选按钮。
**⽐例尺:**提供滑块。
**滚动条:**添加滚动功能。
**⽂字:**以多⾏显⽰⽂字。
**顶层:**提供单独的窗⼝容器。
**Spinbox:**从固定输⼊值中选择。
**PanedWindow:**⽔平或垂直排列⼩部件。
**LabelFrame:**以复杂的结构提供空间。
**tkMessageBox:**在应⽤程序中显⽰消息框。
现在,我们将简要介绍in out应⽤程序中需要的⼀些⼩部件。请记住,这⾥我们将以最简单的⽰例演⽰该⼩部件。每个⼩部件中还有许多可⽤功能。在开发游戏时,我们会看到其中的⼀些。
⼀些Tkinter⼩部件⽰例
按钮: 按钮⼩部件⽤于在我们的应⽤程序中显⽰按钮。通常,当我们按下⼀个按钮时,将有⼀个与之关联的命令。
# Import required libraries :
from tkinter import *
# Initialize tkinter :
root = Tk()
# Adding widgets :
# Add button :
btn = Button(root,text="PRESS ME",command=lambda:press())
# Place button in window :
# Define the function :
def press()
lbl = Label(root,text="You Pressed The Button")
# Enter the main Loop :
root.mainloop()
复制代码
**标签:**标签⼩部件⽤于为我们应⽤程序中的其他⼩部件提供单⾏标题。
root = Tk()
# Adding widgets :
# Add label :
lbl = Label(root,text="This is label")
# Place the button on window :
# Enter the main Loop :
root.mainloop()
复制代码
**画布:**画布⼩部件⽤于绘制各种形状。
# Import required libraries :
from tkinter import *
# Initialize tkinter :
root = Tk()
# Adding widgets :
# Add canvas :
# Create canvas object :
c = Canvas(root,bg="3389db",height=250,width-300)
# Draw a straight line :
line = c.create_line(0,0,50,50)
# To fit the line in the window
c.pack()
# Enter the main loop
root.mainloop()
复制代码
**CheckButton:**我们使⽤checkbutton显⽰可供⽤户使⽤的多个选项。在这⾥,⽤户可以选择多个选项。
root = Tk()
# Adding widgets :
# Add checkbutton :
# IntVar() hold integers
# Default value is 0
# If checkbox is marked, this will change to 1
checkvar1 = IntVar()
checkvar2 = IntVar()
# Create checkbutton
c1 = Checkbutton(root,text="BMW", variable=checkvar1)
c2 = Checkbutton(root,text="Audi",variable=checkbar2)
# To fit in the main window
python生成1到100之间随机数
# Enter the main Loop
root.mainloop()
复制代码
Entry: Entry⼩部件⽤于接受⽤户的单⾏输⼊。
# Import required libraries
from tkinter import *
# Initialize tkinter
root = Tk()
# Adding widgets
# Label
lbl = Label(root,text="Enter your name:")
# Entry
e = Entry(root)
# Enter the main Loop
root.mainloop()
复制代码
**框架:**⽤作容器⼩部件,以组织同⼀应⽤程序中的其他⼩部件