русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Инструмент Brush


Дата добавления: 2015-01-16; просмотров: 1360; Нарушение авторских прав


Объект кисть – это битовый образ, свойства которого распространяются в горизонтальном и вертикальном направлениях при закрашивании области.

Имеется шесть стандартных (Stock) кистей: WHITE_BRUSH – белая, LTGRAY_ BRUSH – светло-серая, GRAY_ BRUSH – серая, DKGRAY_ BRUSH – темно-серая, BLACK_ BRUSH – черная и NULL_ BRUSH (HOLLOW) – пустая кисть.

Выбрать одну из стандартных кистей в контекст устройства можно аналогично выбору пера, определив переменную типа описателя кисти HBRUSH hBrush; получаем описатель кисти, например, GRAY_BRUSH:

hBrush = GetStockObject (GRAY_BRUSH);

Выберем эту кисть в контекст устройства:

SelectObject (hdc, hBrush);

Теперь внутренняя область рисуемых фигур будет закрашиваться серым.

Если необходимо нарисовать фигуру без рамки, выберем перо NULL_PEN:

SelectObject (hdc, GetStockObject (NULL_PEN));

А если только контур фигуры без закрашивания внутренней области, выберем кисть NULL_BRUSH:

SelectObject (hdc, GetStockObject (NULL_BRUSH));

Для создания сплошной (Solid) логической кисти:

hBrush = CreateSolidBrush (rgbColor);

Для создания штриховой (Hatch) кисти, состоящей из горизонтальных, вертикальных или диагональных линий:

hBrush = CreateHatchBrush (iHatchStyle, rgbColor);

параметр iHatchStyle – стиль штриховки: HS_HORIZONTAL, HS_VERTICAL, HS_BDIAGONAL – диагональная слева направо вверх; HS_FDIAGONAL – диагональная слева направо вниз; HS_CROSS – прямая сетка; HS_DIAG­CROSS – диагональная сетка; в обеих функциях rgbColor – цвет штриховых линий.

Промежутки между штриховыми линиями закрашиваются в соответствии с режимом и цветом фона, если режим фона – OPAQUE, то цвет фона используется для закрашивания промежутков между штриховыми линиями, если режим фона – TRANSPARENT, то промежутки между штриховыми линиями не зарисовываются.

Можно создавать кисти, основанные на битовых шаблонах, используя функцию CreatePatternBrush:



hBrush = CreatePatternBrush (hBitmap);

Функция, включающая три рассмотренные ранее функции, строящие кисти:

hBrush = CreateBrushIndirect (&logbrush);

переменная logbrush – структура типа LOGBRUSH («логическая кисть» – logical brush), содержащая поля:

UINT lbStyle – стиль кисти: BS_SOLID – сплошная; BS_HOLLOW, BS_NULL – «пустая» (невидимая); BS_HATCHED – штрихованная; BS_PATTERN, BS_PATTERN8X8 – задаются битовой картой; BS_DIB­PATTERN, BS_DIBPATTERN8X8, BS_DIBPATTERNPT – задаются битовой картой DIBWindows 95 размер шаблона ограничен 8´8 точек);

COLORREF lbColor – цвет кисти, для пустой или «шаблонной» кисти игнорируется, для кистей с DIB-шаблоном младшее слово определяет, следует ли интерпретировать его цвета как заданные цветовыми компонентами (DIB_RGB_COLORS) или как палитровые (DIB_PAL_COLORS).

Значение поля lbStyle определяет, как интерпретируются другие поля:

lbStyle lbColor lbHatch
BS_SOLID Цвет кисти Игнорируется
BS_HOLLOW Игнорируется Игнорируется
BS_HATCHED Цвет штриховых линий Стиль штриховки
BS_PATTERN Игнорируется Описатель битового шаблона

Получить описатель логической кисти: SelectObject (hdc, hBrush);

Удалить созданную кисть: DeleteObject (hBrush);

Получить информацию о кисти:

GetObject (hBrush, sizeof (LOGBRUSH), &logbrush);



<== предыдущая лекция | следующая лекция ==>
Инструмент Pen | Инструмент Font


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.294 сек.