python - 使用 tkinter 的条目选择列表

标签 python forms tkinter tkinter-entry

如何使用 Python tkinter 生成正常的选择列表(如任何 HTML 表单中用于邮政地址的“州”字段)?如下图所示,列表框小部件始终在一个大框中显示所有选择,如果将高度减小到 1,则选择时不会展开列表。 OptionMenu 小部件在选择时会正确弹出列表,但在关闭时不会在类似条目的框中显示当前值。 Entry 小部件具有所需的外观,但没有关联的值列表。

请不要告诉我 tkinter 无法进行基本的表单选择:-(。

from tkinter import *

class App:
    def __init__(self, master):

        frame = Frame(master)
        frame.pack()

        items = ["Apple", "Banana", "Cherry"]
        self.list = Listbox(frame, width=8, height=1)
        for item in items:
            self.list.insert(END, item)
        self.list.pack(side=LEFT)

        fruit = StringVar()
        fruit.set(items[1])
        self.menu = OptionMenu(frame, fruit, *items)
        self.menu.pack(side=LEFT)

        self.entry = Entry(frame, width=8)
        self.entry.insert(0, items[2])
        self.entry.pack(side=LEFT)

root = Tk()
app = App(root)
root.mainloop()

最佳答案

您正在寻找组合框小部件,TTK 提供了此小部件:

http://docs.python.org/dev/library/tkinter.ttk.html

http://www.tkdocs.com/widgets/combobox.html

关于python - 使用 tkinter 的条目选择列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7514626/

相关文章:

python - flask-restful 解析器的日期时间格式是什么?

jQuery 可用时间选择器

javascript - 防止表单提交和点击 keyup 事件处理程序不起作用

python - 有没有办法在主循环中调试 Python tkinter 应用程序?

python - 使用类制作 Tkinter Gui

python - Python 和 numpy 中两个变量循环的列表理解

python - 将网页抓取表放入 Pandas Dataframe 中

python - pandas index_col ="datetime"使 df ['datetime' ] 不可用

javascript - 动态创建的输入类型=文件在 PHP 中不起作用?

python - 如何在 Tkinter 中创建带滚动条的 LabelFrame?