Окно выбора шрифта позволяет пользователю самостоятельно выбрать шрифт для использования в программе. Окно содержит виджет FontSelection, кнопки “ОК” и “Отменить”. Кнопка “Применить” также доступна, но по умолчанию спрятана. Окно выбора шрифта позволяет выбрать шрифт из шрифтов, имеющихся в системе (тех, которые видны при использовании xlsfonts).
Рисунок 9.15, “Выбор шрифта” Показывает отображение FontSelectionDialog:
Окно содержит набор который предоставляет:
- интерфейс для выбора шрифта, начертания шрифта и размера;
- подробную информацию о текущем выбранном шрифте;
- интерфейс для механизма фильтрации шрифтов который ограничивает выбор шрифтов.
Функция для создания FontSelectionDialog:
fontseldlg = gtk.FontSelectionDialog(title) |
Строка title это строка, которая будет использована для заголовка окна.
Экземпляр FontSelectionDialog содержит несколько полей:
fontsel main_vbox action_area ok_button apply_button cancel_button |
Поле fontsel предоставляет ссылку на виджет Font Selection. main_vbox это ссылка на gtk.VBox, содержащий fontsel и action_area окна. Поле action_area это ссылка на gtk.HButtonBox, содержащую кнопки “OK”, “Отмена” и “Применить”. Поля ok_button, cancel_button и apply_button предоставляют ссылки на кнопки “OK”, “Отмена” и “Применить”, и используются для подключения сигналов к ним. Ссылка apply_button также может быть использована для метода show(), который покажет её.
Вы можете выбрать, какой шрифт будет отображаться по умолчанию в fontseldlg использованием метода:
fontseldlg.set_font_name(fontname) |
Поле fontname – это имя полностью, либо частично определённого системного шрифта. Например:
fontseldlg.set_font_name('-adobe-courier-bold-*-*-*-*-120-*-*-*-*-*-*') |
частично определяет шрифт.
Имя шрифта выбранного в данный момент можно получить использованием метода:
font_name = fontseldlg.get_font_name() |
Окно выбора шрифта имеет область предварительного просмотра, которая показывает текущий выбранный шрифт. Текст, используемый в этой области, может быть выбран методом:
fontseldlg.set_preview_text(text) |
Текст области предварительного просмотра может быть получен с помощью метода:
text = fontseldlg.get_preview_text() |
Пример calendar.py использует окно выбора шрифта, отображающего календарную информацию. Строки 107-112 определяют callback-функцию, которая возвращает имя шрифта из диалогового окна и использует его для выбора шрифта виджета Календарь. Строки 114-133 определяют метод, который создаёт окно выбора шрифта, настраивает функции для кнопок “ОК”, “Отмена” и отображает окно.
Предыдущая страница | На уровень выше | Следующая страница |
9.14. Выбор файла (gtk.FileSelection) | К оглавлению | Глава 10. Контейнеры |