次のようなスケールに変数を指定する必要がないことを理解しています。
scale = tk.Scale(root, from_ = 1, to = 100) # makes scale without variable
scaleValue = scale.get() # sets value to scale
ただし、リアルタイムで、スケール値が変更されるたびに変数を設定する方法が必要です。常にリセットすることなくその仕事にする方法があるscaleValue
にはscale.get()
?
のようなものを使用しIntVar()
て値を追跡すると、現在の値をチェックする関数で自動更新されていることがわかります。
値をfloatとして表示して返す場合は、Scaleウィジェットで引数として使用DoubleVar()
して設定することもできresolution=0.01
ます。
import tkinter as tk
class Example(tk.Tk):
def __init__(self):
super().__init__()
self.int_var = tk.IntVar()
self.scale = tk.Scale(self, from_=1, to=100, variable=self.int_var)
self.scale.pack()
tk.Button(self, text="Check Scale", command=self.check_scale).pack()
def check_scale(self):
print(self.int_var.get())
if __name__ == "__main__":
Example().mainloop()
結果:
を使用した例では、DoubleVar()
これを行うことができます。
import tkinter as tk
class Example(tk.Tk):
def __init__(self):
super().__init__()
self.dou_var = tk.DoubleVar()
self.scale = tk.Scale(self, from_=1, to=100, resolution=0.01, variable=self.dou_var)
self.scale.pack()
tk.Button(self, text="Check Scale", command=self.check_scale).pack()
def check_scale(self):
print(self.dou_var.get())
if __name__ == "__main__":
Example().mainloop()
結果:
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加