![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Мои шрифты и Canvas.Font [D7, WinXP]
akvilon © (2004-06-20 13:22:00)Приветствую, Мастера! Есть много созданных мной шрифтов. В определенный момент необходимо менять шрифт вывода текста в главное окно приложения, а потом восстановить исходный. Правильно ли такое решение:
var
oldFont: HFONT;
begin
oldFont := Canvas.Font.Handle; // сохраняем старый
Canvas.Font.Handle := MyFont.Handle; // MyFont: TFont;
{или так Canvas.Font := MyFont;}
// непосредственно вывод через Canvas.TextRect(...
Canvas.Font.Handle := oldFont; // восстанавливаем старый
end;
MBo (2004-06-21 07:22:00) [1]при назначении Canvas.Font.Handle старый шрифт уничтожается, сохраненная ссылка более недействительна. Нужно сохранять не HFONT, а TFont
akvilon (2004-06-20 14:26:00) [2]Просто возникла проблема: первый раз такой код правильно меняет шрифт, но весь последующий вывод при следующей смене шрифта происходит вообще совершенно левым шрифтом. Не пойму, где проблема...