Tkinter变量类第一个参数用于什么?

2024-06-16 13:34:41 发布

您现在位置:Python中文网/ 问答频道 /正文

Tkinter变量类(如StringVar或IntVar)允许tk框架小部件作为第一个参数。这个论点是用来干什么的?你知道吗


Tags: 框架参数部件tkintertkintvar论点stringvar
1条回答
网友
1楼 · 发布于 2024-06-16 13:34:41

更重要的是要使用什么根窗口。它默认为创建的第一个根。但是,有时(很少)您可能需要在程序中多次使用Tk()。在这种情况下,将所有变量与相应的根相关联是很重要的。你知道吗

举个例子:

import tkinter as tk

class menu:
    def __init__(self):
        self.game = tk.Tk()
        self.game.geometry('200x200')
        self.var = tk.StringVar()
        #~ self.var = tk.StringVar(master=self.game) # this solves the problem
        ent = tk.OptionMenu(self.game, self.var, 'one', 'two', 'three', 'four')
        ent.pack()
        lbl = tk.Label(self.game, textvariable=self.var)
        lbl.pack()
        btn = tk.Button(self.game, text="new window", command=self.playagain)
        btn.pack()
        self.game.mainloop()

    def playagain(self):
        menu()

menu()

相关问题 更多 >