如何将滑块的默认值设置为100?
self.slider = tk.Scale(self.leftFrame, from_=0, to=256, orient=tk.HORIZONTAL, command=updateValue)
Run Code Online (Sandbox Code Playgroud) 我需要将比例从 0.55 设置为 2.75,并且我的幻灯片间隔很小
但我得到的只是 1 到 3 的范围,范围为 1。完全烦人。TkInter 文档说它可以处理浮动值,那么有什么问题呢?
Scale(window,label='Set Value', from_=0.55, to=2.75, tickinterval=0.001).pack()
Run Code Online (Sandbox Code Playgroud) 是否可以有一个滑块(Scaletkinter中的小部件),其中操纵滑块时显示的可能值是从列表中读取的离散值?
我列表中的值不是偶数步,而是取决于情况。
从我看到的所有示例中,您可以指定一个最小值,一个最大值和一个阶跃值(一次为n个值),但是我的列表可能如下所示:
list=['0', '2000', '6400', '9200', '12100', '15060', '15080']
Run Code Online (Sandbox Code Playgroud)
举个例子。重申一下,我希望它在拉动滑块时从例如list [0]到list [1]或list [6]到list [5]。
如果有人有其他建议可以轻松地从列表中的数百个项目中选择一个值,那么我无所不能。我尝试了该OptionMenu小部件,但是它变得广泛而难以理解。
我有一个程序需要在 tkinter 中打开Toplevel除主Tk()窗口之外的窗口。在主窗口中,我有一个Scale小部件,它每 100 毫秒随着after调用更新一次。但是,在 Toplevel 窗口打开且比例更新的状态下,当我按下Toplevel窗口中的“X”按钮时,Scale停止移动。
这是我的代码:
from tkinter import Tk, Toplevel, Scale
root = Tk()
slider = Scale(root, orient='horizontal')
slider.pack()
num = 0
def main():
global num
slider.set(num)
num += 1
slider.after(500, main)
def toplevel():
win = Toplevel()
root.bind('<space>', lambda x: [main(), toplevel()])
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
即使按住“X”按钮,如何保持滑块/刻度正常流动?
还有为什么会发生这种情况?
提前致谢!
我正在使用 tkinterScale小部件,并且我的比例设置为 0 到 200。当我打开它时,我希望将滑块设置为 100(在低谷的一半)而不是 0。有没有办法做到这一点完毕?
这是我的代码:
import Tkinter
top = Tkinter.Tk()
top.geometry('600x600')
scale = Tkinter.Scale(top,from_=10,to=40, orient=HORIZONTAL)
scale.pack()
Run Code Online (Sandbox Code Playgroud)
出现以下错误:
NameError: name 'HORIZONTAL' is not defined
我想将比例尺设置为水平,我的参考在这里,但是它不起作用。
我放入了我的框架比例,但我不确定如何在我的标签中显示这个比例的值.我需要在每次比例移动时更新它.我怎样才能做到这一点?
self.options_settings.framepripojeni6 = Frame(self.options_settings.tab1)
self.options_settings.framepripojeni6.pack(side=tkinter.TOP, expand=0, fill=tkinter.BOTH, padx=2, pady=4)
self.options_settings.scale = Scale(self.options_settings.framepripojeni6,from_=1, to=60, length=350)
self.options_settings.scale.pack(side=tkinter.TOP)
self.options_settings.labelScale = tkinter.Label(self.options_settings.framepripojeni5, text="x")
self.options_settings.labelScale.pack(side=tkinter.LEFT)
Run Code Online (Sandbox Code Playgroud)