Python 更改tkinter.spinbox“的切换顺序;价值观;
如果设置了“values”参数,我需要更改Spinbox小部件中切换值的顺序。当使用“from_”和“to”参数时,这可能类似于“increment=-1”。我想,恰恰相反,当我点击“向下按钮”时-值的索引正在增加Python 更改tkinter.spinbox“的切换顺序;价值观;,python,tkinter,Python,Tkinter,如果设置了“values”参数,我需要更改Spinbox小部件中切换值的顺序。当使用“from_”和“to”参数时,这可能类似于“increment=-1”。我想,恰恰相反,当我点击“向下按钮”时-值的索引正在增加 from tkinter import * root = Tk() var = StringVar() values = ['1.Python','2.Ruby','3.PHP','4.Perl','5.JavaScript'] spin_box = Spinbox(root,
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()
只需反转列表,并使用反转列表中的最后一项初始化值。它本身不会更改所选项目的索引,但会使向下箭头以相反的方式在列表中移动
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()
谢谢,这太简单了,我需要的正是。。。现在我想,我被卡住了,因为我很笨…而不是
值[::-1]
使用反向(值)
@DCPY:反向
返回一个生成器。spinbox需要一个实际的列表。当然,我可以使用列表理解将结果转换为实际的列表,但是切片似乎更容易一些。添加一点,我在仅使用reverse时遇到了一个问题,并通过以下方式解决了它:values.reverse();值=值[-1:]+值[:-1];变量集(值[0])