Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

вопрос по form.font.name   Найти похожие ветки 

 
ironwit ©   (2003-07-23 13:46) [0]

Как изменить фонт формы с помощью компонента MHFontDialog, да так - чтобы все компоненты на этой форме тоже сменили свой фонт?

P.S. MHFontDialog почему то на windows nt 4.0 server - не хочет получать список фонтов, пишет что There no fonts installed....


 
Кладов   (2003-07-23 15:58) [1]

по 1) Если у всех контролов ParentFont = true в дизайнере, то смена шрифта формы (Form1.Form.Font.свойство) изменит их все сразу. Это возможно не коснется RichEdit.


 
ironwit ©   (2003-07-23 16:36) [2]

спасибо. Теперь понятно. А я его пытался найти без form1. :(


 
IronWit ©   (2003-07-29 16:54) [3]

С помощью fontcombobox меняю свойство   form1.Form.Font.FontName:=fontcombobox1.FontName;

почему эта зараза не меняется? В смысле никаких изменений на форме. А form1.form.rapaint - я не нашел :(
Что делать то?


 
Boguslaw   (2003-07-29 20:44) [4]

Try:

s := fontcombobox1.FontName;
and test if s is really set ! If fontcombobox was not used , maybe FontName is not set ?


 
SPeller ©   (2003-07-30 08:58) [5]


> form1.Form.Font.FontName:=fontcombobox1.FontName;

Забудьте про VCL, это там мы так делали. Здесь - всюду УКАЗАТЕЛИ! И поэтому простое присвоение не скопирует объект, а просто сделает манипуляцию с числами-указателями, в результате чего исходный объект может затеряться, и нет гарантии, что после присвоения второй объект, и объект, которому принадлежал первый будут работать корректно. Используйте Assign, а если такого метода нет, то тогда вручную перебирайте свойства.


 
SPeller ©   (2003-07-30 09:03) [6]

Сорри, протупил. Пост выше - не в тему, не заметил FontName :)


> Что делать то?

Попробуй сообщение, WM_PAINT например.


 
IronWit ©   (2003-07-30 09:48) [7]

 form1.Form.Font.FontName:=fontcombobox1.FontName;
 label1.Text:=fontcombobox1.FontName;
 form1.Form.Perform(WM_PAINT,0,0);

и ничего...


 
SPeller ©   (2003-07-30 13:36) [8]

У TControl в protected есть метод FontChanged, который присваивается обработчиком TControl.fFont.OnChange. Поэтому, при смене атрибутов должно происходить применение их к окну. Если ты ничего с формовых фонтом ничего не делал, то должно работать.


 
IronWit ©   (2003-07-31 08:59) [9]

2SPeller

все равно не понял :( Что делать то, куда копать?


 
SPeller ©   (2003-08-03 14:16) [10]

Копать в собственный код. Проверить его на ошибки. Может, где-нибудь присвоение сделал не то?


 
Кладов   (2003-08-03 15:28) [11]

На самом деле, не все так просто. Может надо попробовать все положить на панель, и менять фонт у панели. Может, не везде стоит ParentFont = true. Для табконтрола с его хитрыми панелями фокус может не пройти, и менять фонт придется для каждой его панели (или для панели положенной на его панели).


 
ironwit ©   (2003-08-04 11:11) [12]


> Для табконтрола с его хитрыми панелями фокус может не пройти,
> и менять фонт придется для каждой его панели (или для панели
> положенной на его панели).


во, а у меня как раз табконтрол, а на нем уже лежит все остальное. :( Значит придется прокручивать все панели и им всем присваивать фонт?


 
Gandalf ©   (2003-08-04 14:31) [13]


> P.S. MHFontDialog почему то на windows nt 4.0 server - не
> хочет получать список фонтов, пишет что There no fonts installed....


В Options диалога пошарь - может ты все шрифты там исключил.



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.069 c
14-1079688431
Knight
2004-03-19 12:27
2004.04.11
Расчёт прокладки LAN


14-1079174367
Undert
2004-03-13 13:39
2004.04.11
Вопрос не в тему


1-1082464630
ReNoiZer
2004-04-20 16:37
2004.04.11
Tраблы с MIDAS в D7 после установки Delphi 8 for .NET


6-1076229088
Kostik
2004-02-08 11:31
2004.04.11
У меня вопрос по связи в локалке


1-1082566479
Shag
2004-04-21 20:54
2004.04.11
Опять Excel