Pycharm &引用;TypeError:“uuu init”取2到3个位置参数,但给出了9个;但我在一个新的项目文件中进行了测试,效果很好
我正试图让optionmenu在我当前的项目文件上工作,但我一直收到错误 TypeError:init()接受2到3个位置参数,但给出了9个 所以我想看看它是否是代码,我制作了一个新的项目文件,并将它与我目前拥有的项目的先前版本一起粘贴在那里,它工作得非常好。关于我当前项目文件中出现错误的原因,有什么想法吗? 这是密码Pycharm &引用;TypeError:“uuu init”取2到3个位置参数,但给出了9个;但我在一个新的项目文件中进行了测试,效果很好,pycharm,typeerror,optionmenu,tkinter.optionmenu,Pycharm,Typeerror,Optionmenu,Tkinter.optionmenu,我正试图让optionmenu在我当前的项目文件上工作,但我一直收到错误 TypeError:init()接受2到3个位置参数,但给出了9个 所以我想看看它是否是代码,我制作了一个新的项目文件,并将它与我目前拥有的项目的先前版本一起粘贴在那里,它工作得非常好。关于我当前项目文件中出现错误的原因,有什么想法吗? 这是密码 def Pantsize(): # Drop box for pant size # Figure out how to label for
def Pantsize():
# Drop box for pant size
# Figure out how to label for pant sizes
PantsClick = StringVar()
PantsClick.set("Select pant size")
PantsDrop = OptionMenu(AppWindow, PantsClick, "Select pant size", "XS", "S", "M", "L", "XL")
PantsDrop.place(relx=0.3, rely=0.25)
根据我从中读到的 tkinter.OptionMenu接受2或3个参数
tk.OptionMenu(parent_frame, variable, choice1, choice2, ...)
因此,您的第三个参数“选择裤子尺寸”
现在不需要了,因为这已经是您的第二个参数pantslick
,因为在第5行pantslick.set(“选择裤子尺寸”)
如果上面的答案仍然不起作用。尝试添加一个新变量size\u options
,然后将所有选项放在一个元组中。然后在将元组作为参数传递时,对该元组使用*
def Pantsize():
# Drop box for pant size
# Figure out how to label for pant sizes
PantsClick = StringVar()
PantsClick.set("Select pant size")
size_options = ( "XS", "S", "M", "L", "XL" )
PantsDrop = OptionMenu(AppWindow, PantsClick, *size_options)
PantsDrop.place(relx=0.3, rely=0.25)
太棒了,成功了!我将在pantslick.set上使用您的建议,并在外部列出清单以清理此代码。您仍然需要添加tk。在选项菜单前面,但它也可以工作!谢谢
def Pantsize():
# Drop box for pant size
# Figure out how to label for pant sizes
PantsClick = StringVar()
PantsClick.set("Select pant size")
size_options = ( "XS", "S", "M", "L", "XL" )
PantsDrop = OptionMenu(AppWindow, PantsClick, *size_options)
PantsDrop.place(relx=0.3, rely=0.25)