Tkinterの使い方~プルダウンリストの作り方~

はじめに

こんにちは。風助です。

今回は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とウィジェットのパックを忘れずに。

終わりに

今回はプルダウンリストの作成方法について書きました。
設定画面などで使うと便利です。

皆さんの参考になれば幸いです。

コメント

  1. zoritoler imol より:

    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.

  2. graliontorile より:

    I am always thought about this, appreciate it for putting up.

タイトルとURLをコピーしました