ComboBoxとは
これです。
右上のボタンをクリックすれば候補が表示されます。どれかをクリックすれば選択されます。
import tkinter as tk
from tkinter import ttk
def callbackFunc(event):
print(val.get())
if __name__ == "__main__":
root = tk.Tk()
root.title('Combobox')
root.geometry("200x100")
# Combobox create
makers = ['Toyota', 'Nissan', 'Honda']
val = tk.StringVar()
cb = ttk.Combobox(
root, textvariable=val,
state='readonly',
values=makers, width=10)
cb.set(makers[0])
cb.bind(
'<<ComboboxSelected>>',
callbackFunc)
cb.grid(row=0, column=0)
root.mainloop()
Comboboxはttkで規定されています。
tkinterにはありません。 state='readonly にしてあるとエディットボックスにキーボードから入力できません。raedonlyをnormalにすれば入力できます。コールバック関数はbindで実装します。
|