gpt4 book ai didi

python - tkinter optionmenu 第一个选项消失

转载 作者:太空狗 更新时间:2023-10-29 17:13:23 26 4
gpt4 key购买 nike

一个 ttk optionmenu 小部件从下拉列表中的所有值开始。选择任何值后,列表中的第一个值就会消失,再也不会出现...

有人知道为什么吗?这是小部件设计的一个特点吗?尝试以下操作:

import tkinter.ttk as ttk
import tkinter as tk

a = tk.Tk()

options = ['1', '2', '3']
value = tk.StringVar()

masterframe = ttk.Frame()
masterframe.pack()

dropdown = ttk.OptionMenu(masterframe, value, *options)
dropdown.pack()

a.mainloop()

注意 - 另一个用户在这里问了同样的问题:OptionMenu won't show the first option when clicked (Tkinter)

他们似乎找到了解决方法,但不明白为什么会这样。

更新:实际上此行为仅在使用 ttk 小部件时出现。 tk 小部件工作正常(尽管看起来很丑)。

最佳答案

ttk.OptionMenu 命令的签名是这样的:

def __init__(self, master, variable, default=None, *values, **kwargs):

这是文档字符串:

"""Construct a themed OptionMenu widget with master as the parent, the resource textvariable set to variable, the initially selected value specified by the default parameter, the menu values given by *values and additional keywords.

请注意值列表之前的 default 选项。不要向值列表中添加空白项,而是添加您想要的任何值作为默认值:

options = ['1', '2', '3']
dropdown = ttk.OptionMenu(masterframe, value, options[1], *options)

关于python - tkinter optionmenu 第一个选项消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19138534/

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