来自CSDN博客的一段描述
Tkinter GUI界面有以下两个较大的缺点: 1、界面比较丑陋,控件种类有限。2、界面布局逻辑性差。 针对以上两个缺点,引入Tkinter 中的ttk组件。 需要说明的,ttk的很多组件同Tkinter都是相同的,在这种情况下,ttk将覆盖Tkinter的组件,将采用ttk的特性。 使用ttk以后的组件,同windows操作系统(这里是win7系统)的外观的一致性更高,看起来也会舒服很多。 需要注意的是: ttk的用法同Tkinter还是相同的,但是有一些属性ttk不再支持,如 Tkinter 中的fg,bg 在ttk中以不被支持,它是通过style这个对象进行支持的,其它的方面还是变化不大。 ———————————————— 版权声明:本文为CSDN博主「nkd50000」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/nkd50000/article/details/77511707
以下为官方文档的翻译
地址:https://docs.python.org/3/library/tkinter.ttk.html
**
Source code: Lib/tkinter/ttk.py
tkinter.ttk模块提供对Tk 8.5中引入的Tk主题小部件集的访问。如果尚未针对Tk 8.5编译Python,则如果已安装Tile,仍可以访问此模块。使用Tk 8.5的前一种方法提供了额外的好处,包括X11下的抗锯齿字体渲染和窗口透明度 (需要X11上的合成窗口管理器)。
tkinter.ttk的基本思想是尽可能地将实现小部件行为的代码与实现其外观的代码分开。
使用Ttk
要开始使用Ttk,请导入其模块:
from tkinter import ttk
要覆盖基本的Tk小部件,导入应遵循Tk导入:
from tkinter import *
from tkinter.ttk import *
That code causes several tkinter.ttk
widgets (Button
, Checkbutton
, Entry
, Frame
, Label
, LabelFrame
, Menubutton
, PanedWindow
, Radiobutton
, Scale
and Scrollbar
) to automatically replace the Tk widgets.
该代码导致几个tkinter.ttk小部件 (按钮、检查按钮、条目、框架、标签框架、菜单按钮、面板窗口、单选按钮、缩放和滚动条) 自动替换Tk小部件。
这有使用新的小部件的直接好处,它可以在平台上提供更好的外观和感觉; 然而,替换小部件并不完全兼容。主要区别在于,Ttk小部件中不再存在小部件选项,如 “fg” 、 “bg” 和其他与小部件样式相关的选项。而是使用ttk.Style类来改善样式效果。