- StringVar:文字列
- IntVar:整数
- DoubleVar:浮動小数
- BooleanVar:ブール(True/False)
【スポンサーリンク】
StringVarの概要
StringVarは文字列を格納するための変数で、set
メソッドで値を格納し、get
メソッドで値を取得することができる。StringVarをウィジェットのtextvariableオプションにセットすることで、StringVarの値を表示させることができる。
以下、StringVarへの値をセットし、それをLabelに表示する例を示す。
import tkinter root = tkinter.Tk() #StringVarの設定 var = tkinter.StringVar(root) var.set("variable") #値をセット #Label l = tkinter.Label( root, relief="raised", textvariable=var, #textvariableの設定 ) l.pack() root.mainloop()
LabelにStringVarの値が表示されていることが分かる。textオプションではなく、textvariableオプションを使用する必要があることに注意。
【スポンサーリンク】
動的に変数を変更
ほかのウィジェットからStringVarを変更すると、textvariableに設定したウィジェットに値が動的に反映される。ボタンクリック時にStringVarの値を書き換え、ラベルに表示させる例を示す。
import tkinter root = tkinter.Tk() #ボタンクリック時に実行する関数 def change_text(): var.set("Button Clicked") #変数を更新 #StringVarの設定 var = tkinter.StringVar(root) var.set("variable") #Label l = tkinter.Label( root, relief="raised", textvariable=var, #textvariableの設定 ) l.pack() #Button b = tkinter.Button( root, text="click", command=change_text, #ボタンクリック時に実行する関数 ) b.pack() root.mainloop()
ボタンをクリックするとStringVarに値がセットされ、ラベルの値にも反映される。
クリック前
クリック後
クリック後
【スポンサーリンク】