我正在使用Tkinter在Python2.7中使用GUI,我有一个恼人的问题.
我想定义所有小部件使用的默认字体,如果可能的话,在一行中.此行仅修改Entry或ComboBox中使用的字体:
root.option_add("*Font", "courier 10")
Run Code Online (Sandbox Code Playgroud)
但不是示例复选框的标签.
我发现预定义的字体存在"TkDefaultFont",但我无法更改其配置:
print tkFont.Font(font='TkDefaultFont').configure()
tkFont.Font(font='TkDefaultFont').config(family='Helvetica', size=20)
tk.TkDefaultFont = tkFont.Font(family="Helvetica",size=36,weight="bold")
print tkFont.Font(font='TkDefaultFont').configure()
Run Code Online (Sandbox Code Playgroud)
回报:
{'family':'DejaVu Sans','weight':'normal','slant':'roman','overstrike':0,'underline':0,'size': - 12} {'family': 'DejaVu Sans','weight':'normal','slant':'roman','overstrike':0,'underline':0,'size': - 12}
(没有错误,但没有任何改变!)
我做错了什么?
嗨,我正在尝试使用ttk Combobox创建一个带有选项的下拉列表.这样做我可以配置传递给它的默认值的字体大小.但是当我点击箭头时,其他值的字体大小保持不变.我正在开发触摸屏的应用程序,所以我需要提供适当的大小.下面是示例代码,当我运行代码时,A的大小更大,按下单击箭头键,我看到其他值是默认大小.
#! /usr/bin/python
from Tkinter import *
import ttk
class Application:
def __init__(self, parent):
self.parent = parent
self.combo()
def combo(self):
self.box_value = StringVar()
self.box = ttk.Combobox(self.parent, textvariable=self.box_value,font=("Helvetica",20))
self.box['values'] = ('A', 'B', 'C')
self.box.current(0)
self.box.grid(column=0, row=0)
if __name__ == '__main__':
root = Tk()
app = Application(root)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)