繁体   English   中英

如何使用列表中的项目填充 Tkinter optionMenu

[英]How do populate a Tkinter optionMenu with items in a list

“我想用各种列表中的项目填充 Tkinter 中的选项菜单,我该怎么做?在下面的代码中,它将整个列表视为菜单中的一个项目。我尝试使用 for 语句来遍历列表,但是它只给了我几次'a'的值。

from Tkinter import *

def print_it(event):
  print var.get()

root = Tk()
var = StringVar()
var.set("a")
lst = ["a,b,c,d,e,f"]
OptionMenu(root, var, lst, command=print_it).pack()
root.mainloop()

我现在想将变量传递给这个函数,但第二行出现语法错误:

def set_wkspc(event):
  x = var.get()
  if x = "Done":
      break
  else:
      arcpy.env.workspace = x
  print x

代码中的lst是一个带有单个字符串的列表。

使用具有多个菜单名称的列表,并按如下方式指定它们:

....
lst = ["a","b","c","d","e","f"]
OptionMenu(root, var, *lst, command=print_it).pack()
....

在第 2 行的代码中,您在if语句中使用=而不是使用== ,并且不要在循环外使用break关键字,而是使用 pass。 将其更改为以下内容:

if x == "Done":
    pass

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM