На этом шаге мы рассмотрим, как можно задать шрифт у этого компонента.
Указать шрифт, которым будет выводиться текст в поле ввода, можно с помощью опции font. Ее значение может быть записано в одном из двух форматов:
Вот пара примеров:
entValue["font"] = ("Arial", 12)
entValue["font"] = ("Courier", -30, "bold italic")
Font(<Опции>)
Поддерживаются следующие опции:
Пример:
import tkinter.font . . . . . font = tkinter.font.Font(family="Courier", size=-30, underline=True) entValue = tkinter.ttk.Entry(self, font=font)
Функция families() из модуля tkinter.font возвращает кортеж из названий всех поддерживаемых системой шрифтов, представленных строками: .
print(tkinter.font.families()) # Результат: # ('System', 'Terminal', 'Fixedsys', 'Modern', 'Roman', 'Script', # 'Courier', . . . )
Мы можем получать значения различных опций шрифта, равно как и задавать их уже после создания шрифта, применяя способы, описанные на 12 шаге.
Класс Font поддерживает ряд полезных методов:
print(font.actual("size")) # Результат: 23
Если метод был вызван без параметров, он возвращает словарь, ключи элементов которого соответствуют опциям шрифта, а значения элементов - суть значения этих опций:
print(font.actual()) # Результат: # {'family': 'Courier New', 'size': 23, 'weight': 'normal', # 'slant': 'roman', 'underline': 1, 'overstrike': 0}
Пример:
print(font.metrics("ascent")) # Результат: 25
Если метод был вызван без параметра, возвращается словарь, ключи элементов которого соответствуют всем метрикам текущего шрифта, а значения элементов представляют собой значения этих метрик:
print(font.metrics()) # Результат: # {'ascent': 25, 'descent': 8, 'linespace': 33, 'fixed': 1}
На следующем шаге мы рассмотрим проверку введенного значения на правильность.