Tkinter滚动条问题(独立的可滚动长度索引到自定义范围)

时间:2020-05-12 00:32:50

标签: python python-3.x matplotlib tkinter

我在措词上遇到麻烦。我要做的是创建一个索引到我设置的范围的滚动条,该范围在移动/更新时将返回其位置。以最简单的形式,让我们说每次更新时都会打印条的位置。有没有办法做到这一点?我认为这涉及设置自定义范围和某种灵敏度。

最终的计划是使用滚动条滚动以时间轴为x轴的matplotlib图表,但是我相信一旦获得滚动条设置,这将很容易。

谢谢!

self.scroll = ttk.Scrollbar(self, orient="horizontal",
                            command=lambda e1, e2, e3=None:
                                self.scroll_update(e1, e2))

def scroll_update(self, action, val):
    if action == "moveto":
        print(val)
    elif action == "scroll":
        pass

1 个答案:

答案 0 :(得分:1)

正如@jasonharper所指出的,在您的情况下使用Scale更容易:

from tkinter import *

on_update = lambda e: print(e)

#                          |in pixels| |resolution| |the slider, pixels| |switch value display
s=Scale(command=on_update, length=250, to=1000,     sliderlength=50,     showvalue=False)
s.pack()

print(s.get())
s.set(20) #  note, this also executes the "command" property

希望有帮助!