Как установить шрифт по умолчанию для виджетов Tk

У меня есть приложение Tcl/Tk, которое генерирует множество форм, и я хотел бы иметь возможность настраивать шрифты виджета по умолчанию из центрального места без необходимости настраивать каждый виджет с помощью переключателя -font.

#!<path>/wish
button .hello -text "Hello, World!" -command { exit }
pack .hello
puts "--- i would like to set this thing: [.hello configure -font] --- "

person Community    schedule 05.05.2009    source источник


Ответы (1)


Попробуйте добавить,

font create myDefaultFont -family Helvetica -size 20
option add *font myDefaultFont

в начало вашего скрипта. (ссылка на статью о шрифтах)

person Dylan    schedule 06.05.2009
comment
Это именно то, что я искал. Спасибо! - person ; 06.05.2009
comment
если вы не знакомы с понятием именованных шрифтов Tk, использование вышеизложенного упрощает изменение шрифта позже во время выполнения. Все, что вам нужно сделать, это перенастроить myDefaultFont, и каждый виджет, использующий этот шрифт, мгновенно перерисуется с использованием нового шрифта. Нет необходимости вручную перебирать все виджеты. - person Bryan Oakley; 10.05.2009
comment
Похоже статья пропала. Wayback Machine говорит: http://web.archive.org/web/20090302082049/http://www.tclscripting.com/articles/jun06/article1.html - person jarodeells; 14.05.2014