gpt4 book ai didi

python - Tkinter StringVar 错误

转载 作者:太空宇宙 更新时间:2023-11-03 15:17:14 24 4
gpt4 key购买 nike

您好,我在这段代码中遇到一个错误,未定义 StringVar(),这可能是一件小事,但我对 tkinter 经验不足,希望得到一些帮助,谢谢。

这是我的代码:

import tkinter as tk


class Converter1(tk.Tk):
def __init__(self):
tk.Tk.__init__(self)
self.entry = tk.Entry(self)
self.variable = StringVar()
self.variable.set("Miles to Kilometers") # default dropdown menu value
self.menu = tk.OptionMenu(self, variable, "Miles to Kilometers", "Kilometers to Miles")
self.button = tk.Button(self, text="Convert!", command=self.convertMK)
self.button.pack()
self.menu.pack()
self.button.pack()
self.entry.pack()

def convtertMK(self): # converts the miles and kilometers using the dropdown menu
if var.get() == "Miles to Kilometers":
print(int(self.entry.get()) * 1.6093)
else:
print(int(self.entry.get()) / 1.6093)



converter = Converter1()

这是错误:

Traceback (most recent call last):
File "/Users/MaxBookPro/Desktop/test.py", line 25, in <module>
converter = Converter1()
File "/Users/MaxBookPro/Desktop/test.py", line 8, in __init__
self.variable = Variable1
NameError: global name 'Variable1' is not defined

再次感谢。

最佳答案

您需要指定 tk.StringVar(),就像您指定的所有其他 tk 函数一样。

self.variable = tk.StringVar()

这是因为您刚刚执行了import tk。作为替代方案,您可以通过以下两行之一导入您需要的函数,甚至导入所有函数:

from tk import StringVar
from tk import *

关于python - Tkinter StringVar 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19983239/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com