はじめに
こんにちは。風助です。
今回はTkinterを使ってプルダウンリストを作ります。
プルダウンリストはこんなヤツです。
リスト右側の▽(今回は下矢印ですが)を押すと選択しが表示されるやつです。
便利なものなので使い方を覚えていきましょう。
作り方、使い方
ではやっていきましょう。早速コードから。
import tkinter as tk from tkinter import ttk # コンボボックスと紐づける関数 def printVal(event): print(combobox.get()) # ウィジェット配置 frame = tk.Tk() # 選択肢 test = ['A', 'B', 'C'] # プルダウンリスト作成 combobox = ttk.Combobox( master=frame, values=test, ) # 関数と紐づけ combobox.bind( '<<ComboboxSelected>>', printVal, ) combobox.pack() frame.mainloop()
今回のプルダウンリストはTkinterだけではなく、ttkも使います。インポートしましょう。
取り合えず紐づけ用の関数は後回しにして、リスト作成を先に解説します。
まずは親となるウィジェットを置きます。
次に選択肢を用意します。適当なリストを用意しましょう。
このリストをComboboxで指定することでプルダウンリストを作成できます。
ここまでは下準備。
そして次にComboboxを作っていきます。
任意の変数名を指定し、ttk.Comboboxの引数を記入します。
masterに親ウィジェットを指定します。valuesには先ほどのリストを指定します。
これだけでプルダウンリストは完成します。でも選択した値を取得できなければ意味がありません。
そのあたりも触れていきます。
今回は指定した関数を紐づけています。
.bindメソッドを使うと関数を紐づけます。第2引数に関数を指定します。
今回はプルダウンリストで値を選択した瞬間に関数が動作します。
違うタイミングで関数を動かしたいときはひと手間必要ですね。
また、.getメソッドを使うと選択した値を取得できます。今回の関数内で使用しています。
今回はプルダウンリスト内で選択した値を取得し、print()するだけの関数です。
どんな関数を使うかはあなたの用途次第です。ご自由に。
最後にComboboxとウィジェットのパックを忘れずに。
終わりに
今回はプルダウンリストの作成方法について書きました。
設定画面などで使うと便利です。
皆さんの参考になれば幸いです。
コメント
Just wanna comment on few general things, The website style is perfect, the content is very wonderful. “Taxation WITH representation ain’t so hot either.” by Gerald Barzan.
I am always thought about this, appreciate it for putting up.