Шаг 30 - TPen

По-русски будет перо. Немного о режимах проведения линий. Справка C++Builder выдает их так много, что задумываешься - зачем они все нужны? Но неважно, изучать, так изучать! Сначала о режимах наложения красок.

Любой цвет TColor представляет собой число - перечислимый тип. С числом возможны бинарные операции - and, or, not, xor, not xor и т.д. Так и здесь - смешивание основано на бинарных операциях, когда сравниваются попарно биты двух цветов.

Mode

Хочу особо отметить pmNotXor - очень полезный режим. Объясню почему. Допустим, нужно водить курсор особой формы. Но после него же след остается! В режиме pmNotXor при повторной прорисовке восстанавливается цвет фона. Правда, в таком режиме цвет курсора будет меняться в зависимости от фона.

Style

Я уже говорил - стиль линии. Чем тут пунктирный-штрихпунктирный говорить, лучше картинку с разными вариантами приведу:

gif/30_1.gif (1125 b)

Напомню, что при ширине больше 1 стили, кроме psInsideFrame, здесь не приведенного, не используются. У меня просто для удобства широкие. Фоновый белый цвет в данном случае - цвет кисти Brush.

Про psInsideFrame. Бывает так, что программа использует звет из палитры High Color, а у бедного юзера только 256 цветов :(. В этом случае при ширине больше 1 в этом стиле цвет сглаживается до наиболее подходящего. Легче, правда, юзеру порекомендовать видеокарту сменить :).

Со свойствами разобрались. В следующем Шаге будет TBrush - кисть.


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