Форум: "KOL";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Внизвопрос по 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 вся ветка
Форум: "KOL";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.045 c