Python 创建数字猜谜游戏的重置按钮
我正在为Python教程制作一个数字猜测游戏。我是Python新手,使用Python Shell和2.7.5版。除此之外,我已经完成了所有的功能 我必须做一个重置按钮,这让我的脑子乱七八糟。我不知道如何定义它Python 创建数字猜谜游戏的重置按钮,python,tkinter,Python,Tkinter,我正在为Python教程制作一个数字猜测游戏。我是Python新手,使用Python Shell和2.7.5版。除此之外,我已经完成了所有的功能 我必须做一个重置按钮,这让我的脑子乱七八糟。我不知道如何定义它 self.reset_bttn = Button(self, text = "Starta om", command=reset) self.reset_bttn.grid(row = 6, column = 1, sticky = W) def reset():
self.reset_bttn = Button(self, text = "Starta om", command=reset)
self.reset_bttn.grid(row = 6, column = 1, sticky = W)
def reset():
global
这是带有一些标签的代码的开头
from Tkinter import *
import random
number = random.randrange (100) + 1
tries = 0
class Application(Frame):
def __init__(self, master):
Frame.__init__(self, master)
self.grid()
self.create_widgets()
def create_widgets(self):
self.inst_lbl = Label(self, text = "Följ alla stegen")
self.inst_lbl.grid(row = 0, column = 0, columnspan = 2, sticky = W)
self.name_lbl = Label(self, text = "Spelarens namn: ")
self.name_lbl.grid(row = 1, column = 0, sticky = W)
self.name_ent = Entry(self)
self.name_ent.grid(row = 1, column = 1, sticky = W)
self.guess_lbl = Label(self, text = "Skriv in din gissning.")
self.guess_lbl.grid(row = 2, column = 0, sticky = W)
self.guess_ent = Entry(self)
self.guess_ent.grid(row = 2, column = 1, sticky = W)
self.gap1_lbl = Label(self, text = " ")
self.gap1_lbl.grid(row = 3, column = 0, sticky = W)
您可能希望将以下内容添加到应用程序类中:
class Application(Frame):
# ... all the stuff you've copied in your question
def create_widgets(self):
# ... all the stuff again
self.reset_bttn = Button(self, text = "Starta om", command=self.reset)
def reset(self):
self.name_ent.delete(0, tk.END)
self.guess_ent.delete(0, tk.END)
# ... more stuff to be reset here
我没有测试这个,也从来没有做过tkinter
(至少在我记忆中是这样),但我只是读了一下!;-)
.delete(first,last=None)
从小部件中删除字符,从第一个索引处的字符开始,直到但不包括最后一个位置处的字符。如果省略第二个参数,则仅删除第一个位置的单个字符
以及:
小部件显示文本中的位置作为索引给出。有几种方法可以指定索引:
- 作为普通Python索引,从0开始
- 常量tk.END指现有文本后面的位置李>
您应该将这些全局变量作为成员推送到类中。您可能希望将以下内容添加到应用程序类中:
class Application(Frame):
# ... all the stuff you've copied in your question
def create_widgets(self):
# ... all the stuff again
self.reset_bttn = Button(self, text = "Starta om", command=self.reset)
def reset(self):
self.name_ent.delete(0, tk.END)
self.guess_ent.delete(0, tk.END)
# ... more stuff to be reset here
我没有测试这个,也从来没有做过tkinter
(至少在我记忆中是这样),但我只是读了一下!;-)
.delete(first,last=None)
从小部件中删除字符,从第一个索引处的字符开始,直到但不包括最后一个位置处的字符。如果省略第二个参数,则仅删除第一个位置的单个字符
以及:
小部件显示文本中的位置作为索引给出。有几种方法可以指定索引:
- 作为普通Python索引,从0开始
- 常量tk.END指现有文本后面的位置李>
- 已将全局变量移动到实例属性。(
,编号
)尝试
- 通过调用重置文本项。删除(0,结束)
- 已将全局变量移动到实例属性。(
,编号
)尝试
- 通过调用重置文本项。删除(0,结束)
塔克斯!但如果我想删除更多标签,我该怎么办?我希望重置按钮重置窗口中可见的所有参数。下面是在guess btn
def leave(self)上使用的REVEL语句:全局尝试name=self.name\u ent.get()guess=self.guess\u ent.get()如果int(guess)>int(number):result\u msg=“Tyvärr detär lägre!!”如果int(guess)
code`如果没有描述,你的答案就没有多大用处。你能花点时间描述一下你做了什么以及为什么吗?@BryanOakley,补充了描述。很抱歉你的英语很差。@andrejcuric:如果这是一门课,你不应该问别人怎么做,你应该自己解决。你需要的一切“d to know”在internet上现成的文档中。@andrejcurcic,您在注释中输入的代码很难阅读。请更新问题或发布另一个问题。Thanx!但如果我要删除更多标签,我该怎么办?我希望“重置”按钮重置窗口中可见的所有参数。下面是在gues上使用的REVEL语句s btndef-reveal(self):全局尝试name=self.name_äent.get()guess=self.guess_ent.get()如果int(guess)>int(number):result_msg=“Tyvärr detär lägre!!“如果int(猜测)
code`如果没有描述,你的答案就没有多大用处。你能花点时间描述一下你做了什么以及为什么吗?@BryanOakley,补充了描述。很抱歉你的英语很差。@andrejcuric:如果这是一门课,你不应该问别人怎么做,你应该自己解决。你需要的一切“d to know”在internet上现成的文档中。@AndrejCuric,您在注释中输入的代码很难阅读。请更新问题或发布其他问题。