Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

или  глупый или.... (ошибка в KOL RichEdit)


Siliks ©   (2003-07-12 16:32:00) 

Или я чего-то не понимаю, или в RichEdit на KOL есть ошибка - при изменении цвета шрифта в RunTime размер шрифта уменьшается до минимума. (хотя вроде как так быть не должно), и обратно его восстановить не получается. В чем тут дело, и как это можно исправить?


Кладов   (2003-07-15 17:57:00) [1]

ComCtrls.pas:

procedure TTextAttributes.SetHeight(Value: Integer);
begin
 Size := MulDiv(Value, 72, RichEdit.FScreenLogPixels);
end;

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


Юрий К   (2003-07-15 15:36:00) [2]

А в каком модуле VCL для RichEdit код преобразования размеров фонтов от одного к другому, где нужно смотреть, как там это сделано?


Кладов   (2003-07-12 21:13:00) [3]

В рич-контроле свои единицы измерения шрифта - twips, они примерно на порядок меньше, чем те, что мы используем в других контролах. Пока шрифт не меняется, используется размер по умолчанию, который соответствует нормальному экранному. Как только поменяли любой атрибут шрифта, применяется и атрибут размера, но он не в пикселах и не в поинтах, а в твипсах. См. описание к RE_FmtFontSize.


Gandalf   (2003-07-12 18:32:00) [4]

А код какой?


Наверх

Титульная страница Поиск, карта сайта Написать письмо