繁体   English   中英

Tkinter选项菜单

[英]Tkinter option menu

您好,我目前正在学习在python 2.7中使用Tkinter。 我正在编写一个程序,使用用户帐户来选择一组不同的规则。 在我的程序中,我试图让它成为用户可以点击; “新用户”或“现有用户”。 问题是我使用的是tkinter,optionmenu的语法如下。

    option = OptionMenu(master, var, "one", "two", "three", "four")
    option.pack()

如图所示,“One”,“two”和“three”是列表中的所有选项,我想用用户名替换它们。 问题是如何获取可变的用户名列表,并将该列表输入到此选项字段中? 我曾尝试过使用元组但是可以使用...有人帮我请!

您可以使用* -operator来解压缩参数列表,如下所示:

...
options = ['one', 'two', 'three', 'four']
option = OptionMenu(master, var, *options)
option.pack()
...

有关解压缩参数的更多信息,请访问: http//docs.python.org/2/tutorial/controlflow.html#unpacking-argument-lists

您应该注意, * -operator也可以用于接受任意数量的参数,例如:

def print_names(*names):
    for name in names:
        print(name)

print_names('Bob', 'James', 'Harry')

哪个会输出:

 Bob James Harry 

还存在** -operator,它以非常类似的方式工作,除了它使用关键字参数。 如果您想了解有关这些运算符及其用法的更多信息,那么我强烈建议您访问我上面链接的文档文章(相关信息从此处开始: http//docs.python.org/2/tutorial/controlflow.html#keyword - 参数 )。

暂无
暂无

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

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