from tkinter import *
from tkinter import ttk
hSpin = [] #スピンボックスのハンドルを格納します
SpinVal = [] #スピンボックスの設定値
def update_value(idx):
s = SpinVal[idx].get()
print("Update spinbox {}".format(idx) + ' = ' + s )
if __name__ == '__main__':
root = Tk()
root.title('Spinbox')
root.columnconfigure(0, weight=1);
root.rowconfigure(0, weight=1);
# Frame
frame1 = ttk.Frame(root, padding=10)
frame1.grid(sticky=(N,W,S,E))
frame1.columnconfigure(0, weight=1);
frame1.rowconfigure(0, weight=1);
# スピンボックス
for n in range(16):
#スピンボックスの設定値をリストに追加
val = n + 50
SpinVal.append(StringVar())
SpinVal[n].set(int(val))
sp = Spinbox(
frame1,
textvariable=SpinVal[n],
from_=30,
to=80 ,
command=lambda idx=n:update_value(idx))
sp.grid(row=n, column=0, sticky=(N, W))
#スピンボックスのハンドルをリストに追加
hSpin.append(sp)
root.mainloop()
FrontPage