Python ttk.Style:如何找到所有可能的配置选项?

时间:2017-07-04 16:49:09

标签: python layout styles element ttk

我在Linux上使用python2.7。我开始尝试使用ttk样式。 我想知道在哪里可以找到小部件的完整布局。例如Treeview。

当我跑步时:

import ttk
from pprint import pprint
s = ttk.Style()
ttk.Treeview().pack()

layout = s.layout('Treeview')
pprint(layout)

我得到了这个输出:

[('Treeview.field',
  {'border': '1',
   'children': [('Treeview.padding',
                 {'children': [('Treeview.treearea', {'sticky': 'nswe'})],
                  'sticky': 'nswe'})],
   'sticky': 'nswe'})]

当我跑步时:

s.configure('Treeview.Heading', background='red')

我得到了所需的红色标题:

Treeview with red heading

我的问题是:

如何获取小部件的整体布局?

我已经在互联网上发现了Treeview.Heading的存在。 为什么它没有出现在 s.layout 的输出中?

1 个答案:

答案 0 :(得分:1)

这解决了它:

 # -*- coding: utf-8 -*-                                                        

 import ttk                                                                     
 from pprint import pprint                                                      

 s = ttk.Style()                                                                
 data = {}                                                                      
 for e in s.element_names():                                                    
     data[e] = s.element_options(e)                                             
pprint(data)