Как установить шрифт приложения во время разработки? - PullRequest
5 голосов
/ 18 октября 2019

Я читал, что наиболее централизованный способ иметь согласованность шрифтов в проекте - это иметь все элементы управления с активным свойством ParentFont и устанавливать Application.DefaultFont во время выполнения.

Я хотел бы применить другой шрифт, скажем, 'Segoe UI', ко всему приложению во время разработки.

Как его можно изменить во время разработки?

1 Ответ

0 голосов
/ 19 октября 2019

У вас есть несколько вариантов, которые лучше всего подходят для вас, может зависеть от вашей ситуации.

Если вы используете свои собственные формы (не из пакета или библиотеки), тогда вы можете разработать каждую из них для наследования отродитель, чтобы дать вам начальный шрифт, как предлагается в комментариях. Однако среда IDE позволит это изменить, и если файл DFM для формы записывает шрифт в производной форме, он будет использовать этот шрифт, даже если шрифт родительского класса будет изменен.

Другой подход будетнаписать невизуальный компонент, который вы можете перетащить на форму. Когда этот компонент имеет своего владельца (при создании), он может проверить, принадлежит ли он форме и установить шрифт на родительском. Точно так же он может устанавливать любые свойства, которые вам нужны, а также может находить дочерние элементы его владельца и также устанавливать любые свойства этих элементов управления.

Переходя от этого, вы можете во время выполнения,посмотрите на класс TScreen, который содержит свойства CustomForms и Forms, которые позволяют вам получить доступ ко всем активным в настоящее время потомкам TCustomForm и TForm соответственно. Поскольку вы можете получить доступ к этому, вы можете изменить шрифты на всех из них во время выполнения. Поэтому, если вы разрешите своему пользователю выбирать шрифт, с помощью объекта «Экран» вы можете изменить шрифт на всех формах.

Сочетание этих двух параметров позволяет легко получить доступ к свойствам экрана.

Помните, что изменение шрифта может изменить размер отображаемого текста. (Как и будет, конечно, изменение размера шрифта и стиля). Это может повлиять на внешний вид ваших элементов управления и их выравнивание.

...