Python Tkinter – Как прочитать значение выбранного ComboBox в классифицированных кадрах?Python

Программы на Python
Anonymous
Python Tkinter – Как прочитать значение выбранного ComboBox в классифицированных кадрах?

Сообщение Anonymous »

Я добавил в свой код ComboBox, и он работает. Однако я пытаюсь найти способ прочитать значение ComboBox, когда пользователь выбирает опцию.
Я также использовал классы для определения каждого из мои фреймы появляются, поэтому я могу переключаться между окнами.
Я довольно неопытен в работе с Tkinter и не могу разобраться в ComboBox.
Вот мой код той части, где мне нужно использовать ComboBox:

Код: Выделить всё

class EntryPage(tk.Frame):

def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
self.controller = controller
label = tk.Label(self, text="This is page 1", font=controller.title_font)
label.pack(side="top", fill="x", pady=10)
button = tk.Button(self, text="Go to the start page",
command=lambda: controller.show_frame("StartPage"))
button.pack()

def gunvarselect():
gunselected = (gunvar)
print(gunselected)

gunvar = tk.StringVar()
gunselect =ttk.Combobox(self, textvariable=gunvar)
gunselect.bind(self, '', gunvarselect)
gunselect['values'] = ('Pistols', 'Shotguns', 'Rifles', 'Sniper Rifles', 'Sub-machine Guns', 'Light-machine Guns')
gunvarselect()
gunselect.pack(side="left", expand="false", pady=20, padx=50)

gunvar2 = tk.StringVar()
gunselect2 = ttk.Combobox(self, textvariable=gunvar2)
gunselect2['values'] = (
'Pistols', 'Shotguns', 'Rifles', 'Sniper Rifles', 'Sub-machine Guns', 'Light-machine Guns')
gunselect2.pack(side="right", expand="false", pady=20, padx=50)
Я пытался прочитать значение, связав событие, однако мне не удалось его правильно настроить.
Я также пытался прочитать значение только через текстовую переменную, но я не думаю, что это будет эффективно.

Подробнее здесь: https://stackoverflow.com/questions/788 ... -classed-f

Вернуться в «Python»