在OS X上,ttk.Style().configure('TLabelframe.label', font='helvetica 14 bold')
用于更改ttk.LabelFrame小部件使用的字体。在Windows上,除了将相同的字体信息返回给ttk.Style().configure('TLabelframe.label', font='arial 14 bold')
之外,ttk.Style().lookup('TLabelframe.label','font')
无效。
我尝试了不同的字体名称和格式,使用TkDefaultFont创建派生样式,只是更改大小和不同的小部件(TButton.label,TCheckbutton.label)。到目前为止,无论我尝试过什么,它似乎总是以默认大小使用TkDefaultFont。
更改python27 / tcl / tk8.5 / ttk / xpTheme.tcl(Windows上的默认主题)中的字体设置确实会更改显示的字体。从主题设置中删除-font TkDefaultFont
设置不会更改显示的内容。
有关这实际如何运作的任何建议吗?
编辑:之前我没有尝试更改Label小部件的字体,而且实际上有效。
答案 0 :(得分:0)
我相信这个区域的代码是错误的并且会打开一张票。使用'TLableframe.Label'(注意'Label'中的大写'L'有效。'TButton.label'和'TButton.Label'不起作用,但只是'TButton'有效;'TCheckbutton'是相同的。我是无法使用任何组合更改“TEntry”的字体,包括添加“textarea”。
答案 1 :(得分:0)
对于ttk.LabelFrame
,您必须创建单独的ttk.Label
窗口小部件,然后使用labelwidget=
操作数将其分配给LabelFrame。您可以在Label小部件上设置所需的任何字体/样式,这些字体/样式将反映在LabelFrame中。请注意,您不要为Label小部件调用几何管理器。只需实例化它,然后将其分配给LabelFrame。
这也意味着,如果要控制LabelFrame中的子控件的状态,则可以分配几乎所有需要的窗口小部件,例如ttk.Checkbutton
。您必须为此编写代码,但在视觉上,它会根据Checkbutton的状态启用/禁用子控件。
来源:http://infohost.nmt.edu/tcc/help/pubs/tkinter/web/ttk-LabelFrame.html