小编Dal*_*ker的帖子

如何让 ttk.Scale 表现得更像 tk.Scale?

Ttk 版本中也存在几个 Tk 小部件。通常它们具有相同的一般行为,但使用“样式”和“主题”而不是每个实例的外观属性(例如bg,等...)。这很好,因为 Ttk 小部件默认采用操作系统窗口管理器的“标准外观”,无需配置任何有关外观的内容。

但是,由于某种原因,ttk.Scale小部件没有两个非常有用的tk.Scale小部件选项:showvaluetickinterval(请参阅参考资料)。这很奇怪,因为这些更多是关于行为而不是外观。

在保持ttk外观的同时“模仿”这两个选项会很棒。以下代码是我对此的笨拙尝试。问题是:有没有更好的方法?(显然,除了将整个内容封装在一个类中)以及如何合理地获得半自动tickinterval替代品(而不是像下面的代码那样“手动”完成)。

import tkinter as tk
import tkinter.ttk as ttk

# initial setup
root = tk.Tk()
frame = tk.Frame(root)

#################################################################
# create a tk slider showing current value and ticks
# (showvalue=True is the default)
tkslider = tk.Scale(frame, from_=-4, to=4,
                    orient=tk.HORIZONTAL, tickinterval=2)
#################################################################

#################################################################
# create a ttk slider showing current value and ticks
# use a ttk …
Run Code Online (Sandbox Code Playgroud)

python tkinter ttk python-3.x

6
推荐指数
1
解决办法
4838
查看次数

标签 统计

python ×1

python-3.x ×1

tkinter ×1

ttk ×1