Шаг 33 - Методы рисования. Текст.

Текст мы все знаем. Кто помнит Turbo Pascal, там были такие процедуры TextOut и прочее. Выведение текста на канве очень это напоминает. Текст - это, можно сказать, отдельный инструмент, контролируемый через свойство Font класса TFont. С этим классом мы встречались не раз. Все его свойства знакомы, как родная клавиатура :). Хочу только обратить внимание на свойство Style. Оно слеплено из щаблонного класса Set, называется TFontStyles. Опять таки обращаясь к Паскалю, напомню, что там есть такие типы данных - множества. В C++ вместо этого используются битовые поля. Но VCL была изначально написана на Объектном Паскале, поэтому этот класс и ввели. Техника работы:

TFontStyles fs;//объявление класса
fs<<fsBold;    //включение элемента в множество
if(s.Contains(fsBold){/*что-то делает*/} //проверка на вхождение
fs>>fsBold     //исключение элемента из множества
fs=TFontStyles()<<fsBold<<fsItalic  //включение с автоматической перерисовкой

Пока хватит, а то я далеко от темы ушел. Пару слов о Charset. Всегда ставьте DEFAULT_CHARSET, если хотите, чтобы приложения были более-менее переносимы. Обратите внимание - при выборе шрифта из диалога Charset будет постален, как Вы это укажете. Опять-таки - лучше DEFAULT_CHARSET - раскладка, принимаемая по умолчанию. Значит, методы текста:

Вот так. Ничего более, по-моему, и не надо.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Аванесов Самвел - 26.11.2001