将值分配给Tkinter中的按钮并将它们附加到列表中(Python)

时间:2013-12-25 14:04:16

标签: python tkinter

初学者在这里,所以对于任何愚蠢的问题提前抱歉=]我有很大的问题使我正在使用图形程序。玩家可以选择4个选项,“学习”,“考试”,“睡眠”和“派对”。根据他选择的内容,我希望将选择附加到跟踪所有选择的列表中。这不是问题,如果我不使它图形化,但当我尝试图形我只是丢失。我已经尝试创建4个按钮,然后只是尝试为每个按钮附加一个值(值将是“睡眠”, “学习”,“考试”等)然后使用StringVar() - 函数,但似乎对我不起作用:)这是我到目前为止所写的内容(它可能非常糟糕:s):

from tkinter import *
list1 = ['sleep','party','sleep']
root = Tk()
root.title("test!")
root.geometry("500x200")
class Application(Frame):
    def __init__(self,master):
        super(Application,self).__init__(master)
        self.grid()
        self.create_widgets()

    def create_widgets(self):
        Label(self,
              text = "Welcome to the game!"
              ).grid(row = 0, column = 0, sticky = W)
        self.favorite = StringVar()
        self.favorite.set(None)
        self.btn1 = Button(self, text = "study", command =self.update_text, value = "study")
        self.btn1.grid()
        self.btn2 = Button(self, text = "party", command = self.update_text, value = "party")
        self.btn2.grid()
        self.btn3 = Button(self, text = "exam", command = self.update_text, value = "exam")
        self.btn3.grid()
        self.btn4 = Button(self, text = "sleep", command = self.update_text, value = "sleep")
        self.btn4.grid()

    def update_text(self):
        message = "Your choice was "
        message += value
        print(message)
        lista1.append(value)

app = Application(root)
app.grid()
root.mainloop()

非常感谢,对不起,如果这是非常基本的

1 个答案:

答案 0 :(得分:1)

将值作为参数发送。尝试这个&然后告诉你是否遇到任何问题