Главная » Статьи для тега "заливки"

Закраска и заполнение замкнутых областей Free Pascal

Добавлено Дата: 20 July, 2014 категория: Free Pascal

В этом разделе речь пойдет о закрашивании замкнутых областей любым цветом или их заполнение фиксированным цветным узором — шаблоном заливки. Шаблон заливки задается массивом 8 8 бит, где каждый единичный разряд окрашивается указанным цветом, а каждый нулевой разряд — цветом фона. Представьте себе, что весь графический экран покрыт такими узорными квадратиками, примыкающими друг к другу по горизонтали и вертикали. Наложим на этот узор контур замкнутой области, и та часть узора, которая ограничена контуром, используется для окраски внутренней или внешней части нашей фигуры. Если шаблон заполнен только еди- ничными разрядами, то закраска ведется сплошным цветом. Наличие единичных разрядов только в отдельных строках шаблона (например, хотя бы в одной) приво- дит к горизонтальной штриховке области. Варьирование комбинаций нулей и еди- ниц в шаблоне позволяет создавать довольно много различных узоров — до 32  63.

Читать »

Действие по умолчанию

Добавлено Дата: 15 March, 2011 категория: C#, Компоненты

Действием по умолчанию называется действие, выполняемое по двойному щелчку мышью на компоненте. Стандартное поведение дизайнера в этом случае — создание обработчика события, помеченного как событие по умолчанию (default event) с помощью атрибута DefauitEvent (см. разд. 5.3). В разд. 5.7 мы добавляли событие OnGradientChange, которое вызывается при изменении свойств градиентной заливки. Для того чтобы обозначить его как событие по умолчанию, достаточно добавить к нему соответствующий атрибут:

Читать »

Транзакции дизайнера

Добавлено Дата: 26 January, 2011 категория: C#, Компоненты

В разд. 6.5 я приводил код компонента градиентной заливки GradientLabei. С помощью контекстного меню цвета начала и завершения заливки менялись местами. Код этого метода выглядел следующим образом:

PropertyDescriptor start = GetPropertyByName("StartColor"); PropertyDescriptor end = GetPropertyByName("EndColor"}; Color trop = (Color}start.GetValue(glabel}; start.SetValue(glabel, end.GetValue(glabel}); end.SetValue(glabel, tup);

Читать »

Сложное свойство

Добавлено Дата: 18 December, 2010 категория: C#, Компоненты

является классом, объединяющим несколько свойств. Для нашего класса градиентной заливки GradientLabel сложное свойство может объединять свойства startcoior и EndCoior. Пример такого класса я привел в листинге 8.1, а листинг 8.2 показывает обновленный класс GradientLabel, использующий новое свойство. Фактически я сохранил всю функциональность. Свойства startcoior и EndCoior, как и раньше, сохраняют начальный н конечный цвета градиентной заливки.

Читать »