刻度线不显示-Tkinter刻度

时间:2019-06-28 16:09:13

标签: python tkinter tkinter-scale

我所做的tkinter Scale中没有一个显示刻度线。

我尝试将其他人的代码粘贴到我的编辑器中,结果相同,没有滴答声。该示例非常简单,因此除了tickinterval选项的其他值之外,我什么都想尝试。我正在将tkinter 8.6与python 3.5一起使用。感谢您的协助。

import tkinter as tk

root = tk.Tk()

flt = tk.Scale(
    root,
    label="No Ticks", 
    from_=50.0, 
    to=200.0, 
    length=900, 
    orient="horizontal", 
    resolution=25, 
    tickinterval=50.0)

flt.grid()

root.mainloop()

没有错误消息,其他所有内容似乎都起作用。

1 个答案:

答案 0 :(得分:0)

选项tickinterval不是指刻度线,而是指Scale上显示的数字。

一旦布莱恩·奥克利(Bryan Oakley)在评论中指出了这一点,我便可以通过运行一些简单的示例来收集以下信息,而这些示例在文档中都没有找到。基本上,resolution选项和tickinterval选项的值需要一起考虑,以使两者都能按需工作。

tickinterval

使用默认值零,显示的唯一数字将是用来命名滑块位置的数字。否则,tickinterval将是刻度上数字标记位置之间的距离。为确保tickinterval可以按需要显示,应将其设置为resolution的偶数倍,例如如果resolution = 100,则tickinterval应该是200 或300等。如果resolution设置为0或-1,则tickinterval将以所需的任意增量显示。