※当サイトのリンクには広告が含まれています。

【Tkinter】Spinboxで上下ボタンをクリックして数値を選択するスピンボックスを実装する【PythonでGUIアプリ開発】

Tkinter

設定された範囲内の数値を上下のボタンをクリックして選択する場合は、スピンボックスが便利です。
今回は、スピンボックスの使い方を簡単なサンプルコードをもとに説明します。

スポンサーリンク

準備

まずはウィンドウを作成しましょう。

ウィンドウの作成方法がわからない方は、下の記事を参考にしてください。

スポンサーリンク

Spinboxで設定した数値をボタンクリックしてLabelで表示する

サンプルコード

import tkinter as tk

main_win = tk.Tk()
main_win.title("テスト用ウィンドウ")
main_win.geometry("400x300")

def push_button():
    label = tk.Label(text=var_spinbox.get())
    label.pack()

var_spinbox = tk.StringVar()
var_spinbox.set(0.0)
spinbox = tk.Spinbox(main_win, from_=-5, to=5, increment=0.5, textvariable=var_spinbox)
spinbox.pack()

button = tk.Button(text="ボタン", command=push_button)
button.pack()

main_win.mainloop()

実行結果

解説

スピンボックスにある上下のボタンをクリックすると数値が変化し、ボタンをクリックすると設定された数値が表示されるサンプルコードです。

スピンボックスはtkinter.Spinboxで実装することができます。

設定できる数値の最低値をfrom_、最高値をtoのオプションで設定します。
上下のボタンをクリックした時の数値の変動幅は、incrementのオプションで設定します。
今回のサンプルでは、最低値-5、最高値5とし、0.5刻みで数値設定できるようになっています。

スピンボックスで設定する数値は、tkinter.StringVar()で生成した変数をtextvariableのオプションで指定することで、バインドします。
設定された数値は.get()で取得することができます。

Tkinter
スポンサーリンク
toniemonをフォローする

コメント