Замена шрифта на всех объектах формы | |
---|---|
rud Автор Сообщений: 640 Откуда: Москва Дата регистрации: 02.09.2000 |
Здесь уже обсуждалась проблема шрифта MS Sanf Serif и Windows 10. Она решаема, но не всегда удобно для удаленных пользователей. Поэтому хочется залезть в проект, и заменить в каждой форме во всех объектах этот шрифт на Arial, например. Понятно, что потом придется местами менять размеры объектов, но хотелось бы какой то простой командой заменить всюду на форме этот шрифт, чтобы меньше работать руками. Такое возможно?
|
Re: Замена шрифта на всех объектах формы | |
---|---|
Taran Сообщений: 13623 Откуда: Красноярск Дата регистрации: 16.01.2008 |
Любая форма или библиотека по сути таблица.
Открывай как таблицу, сканируй, правь поле Properties. |
Re: Замена шрифта на всех объектах формы | |
---|---|
rud Автор Сообщений: 640 Откуда: Москва Дата регистрации: 02.09.2000 |
Спасибо! Я что-то не сообразил. Написал коротенькую прогу, которая открывает в заданной папке все формы как таблицы, и заменяет MS Sans Serif на Arial. Еще раз спасибо за подсказку!
|
Re: Замена шрифта на всех объектах формы | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Насколько я помню, если явно не меняли шрифт, то строчки с FontName=... вообще не будет в scx/vcx файле.
Ну а так - если изначально задумывались хоть чуть об архитектуре приложения, то не использовали бы штатные фоксовые классы, а только их наследники. И тогда достаточно было бы поменять шрифт всего в десятке классов в базовой библиотеке... ------------------ WBR, Igor |
Re: Замена шрифта на всех объектах формы | |
---|---|
Ydin Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
Нет, просто исходники форм подправить мало. Как-то компильнуть формы надо. Не знаю как.
В рантайме это не сделаешь. Хотя, проперти, может, и не надо Исправлено 1 раз(а). Последнее : Ydin, 04.02.20 23:39 |
Re: Замена шрифта на всех объектах формы | |
---|---|
Taran Сообщений: 13623 Откуда: Красноярск Дата регистрации: 16.01.2008 |
Так никто не запрещает после исправлений шрифта выполнить Compile form... Хоть это и действительно лишнее. |
Re: Замена шрифта на всех объектах формы | |
---|---|
rud Автор Сообщений: 640 Откуда: Москва Дата регистрации: 02.09.2000 |
Я после исправлений шрифта заново построил exe файл, поэтому все нормально работает.
А замечание Igor Korolyov верное, согласен, что раньше думать надо было. Но тут, как говорится "знать бы прикуп, жить бы в Сочи". |
Re: Замена шрифта на всех объектах формы | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Проблема такого подхода в том, что шрифт может быть попросту не задан для объектов на формах - и тогда "заменой" ничего не получится сделать, а написать анализатор который не только заменить, но и добавить свойство сможет - это задача в общем случае очень непростая - поскольку фокс весьма своеобразно прописывает свойства к примеру для контейнерных классов из библиотеки, или даже для банальных гридов и пейджфреймов.
Правда есть хитрый способ - к открытому в редакторе форм/классов объекту (форме в частности) можно получить програмный доступ. ASELOBJ() и рекурсивно обходить все вложенные объекты, прописывая тот самый FontName - а уж форм/класс дизайнер сам всё правильно пропишет в vcx/scx файлы. Это пол-шага к самописному Builder-у, но и этого зачастую вполне достаточно для подобных рутинных операций со старой кодовой базой. ------------------ WBR, Igor |
© 2000-2024 Fox Club  |