Я пытаюсь узнать, как использовать поле ttk Combo, и дошел до того, как настроить его, заполнить, заставить его реагировать на выбор элемента в списке с помощью элемента управления кнопки и альтернативно связываться с событием ComboboxSelected. Последний работает для закодированных перечисленных элементов, но я что-то упускаю, чтобы он работал для записи, введенной в поле со списком. Я могу ввести элемент, и он ответит, если я нажму кнопку, но ввод элемента и нажатие клавиши ввода не работает. Я пытаюсь сделать поле со списком полностью функциональным без кнопки.
import tkinter as tk
from tkinter import ttk
window = tk.Tk()
window.minsize(600, 400)
window.title("ttk Combo box")
def chooseNumbers():
label.configure(text = "You Selected " + mynumber.get())
def callbackfn(event):
label.configure(text = "You Have Selected " + mynumber.get())
label = ttk.Label(window, text = "Choose A Number")
label.grid(column = 0, row = 0)
mynumber = tk.StringVar()
combobox = ttk.Combobox(window, width = 15 , textvariable = mynumber,state='normal')
combobox['values'] = (5,6,7,8,9,10,12,14,15)
combobox.grid(column = 0, row = 1)
button = ttk.Button(window, text = "Click Me", command = chooseNumbers) # don't want this
button.grid(column = 1, row = 1)
combobox.bind("<<ComboboxSelected>>",callbackfn) # how to get this to work with keyboard entry?
window.mainloop()