更改切换tkinter.spinbox“值”的顺序

时间:2017-05-11 18:24:42

标签: python tkinter

如果设置了“values”parametr,我需要更改Spinbox小部件中切换值的顺序。当使用“from_”和“to”pararalrs时,这可能类似于“increment = -1”。我想,恰恰相反,当我点击“向下按钮”时 - 值的索引正在增加......

from tkinter import *

root = Tk()
var = StringVar()
values = ['1.Python','2.Ruby','3.PHP','4.Perl','5.JavaScript']
spin_box = Spinbox(root,
                   textvariable=var,
                   values=values,
                   wrap=True,
                   command=lambda: print(var.get()),
                   width=12)
spin_box.pack()

root.mainloop()

1 个答案:

答案 0 :(得分:1)

只需反转列表,然后使用反转列表中的最后一项初始化值。它不会改变所选项目本身的索引,但会使向下箭头以相反的方式在列表中移动。

from tkinter import *

root = Tk()
values = ['1.Python','2.Ruby','3.PHP','4.Perl','5.JavaScript']
values = values[::-1]
var = StringVar()
spin_box = Spinbox(root,
                   textvariable=var,
                   values=values,
                   wrap=True,
                   command=lambda: print(var.get()),
                   width=12)
var.set(values[-1])
spin_box.pack(padx=50, pady=50)

root.mainloop()