Карандаш и кисть
Рассмотренные методы обеспечивают только вычерчивание примитивов. Они не определяют толщину линии, цвет и другие свойства. Вид графического элемента определяют свойства Реn(карандаш) и Brush (кисть) той поверхности (Canvas), на которой рисует метод. Карандаш и кисть, являясь свойствами объекта Canvas, в свою очередь представляют собой объекты Реn и Brush. Свойства объекта Реn (табл. 22.2) задают цвет, толщину и тип линии или границы геометрической фигуры. Свойства объекта Brush (табл. 22.3) задают цвет и способ закраски области внутри прямоугольника, круга, сектора или замкнутого контура.
Таблица 22.2. Свойства объекта Реn (карандаш)
Свойство | Определяет |
Color | Цвет линии |
Width | Толщину линии (задается в пикселах) |
Style | Вид линии: psSolid - сплошная; psDash - пунктирная, длинные штрихи; psDot - пунктирная, короткие штрихи; psDashDot - пунктирная, чередование длинного и короткого штрихов; psDashDotDot - пунктирная, чередование одного длинного и двух коротких штрихов; psClear - линия не отображается (используется, если не надо изображать границу области - например, прямоугольника) |
Таблица 22.3. Свойства объекта Brush (кисть)
Свойство | Определяет |
Color | Цвет закрашивания замкнутой области |
Style | Стиль заполнения области: bsSolid - сплошная заливка. Штриховка: bsHorizontal - горизонтальная; bsVertical - вертикальная; bsFDiagonal - диагональная с наклоном линий вперед; bsBDiagonal - диагональная с наклоном линий назад; bsCross - в клетку; bsDiagCross - диагональная клетка |
Ниже приведена функция обработки события onPaint, которая рисует на поверхности формы олимпийский флаг.
Листинг 22.2.
//олимпийский флаг
void__fastcall TForml::FormPaint(TObject *Sender)
{
// полотнище флага
Canvas->Pen->Width = 1;
Canvas->Pen->Color = clBlack;
Canvas->Brush->Color = clCream;
Canvas->Rectangle(30,30,150,150);
Canvas->Pen->Width =2; // ширина колец
Canvas->Brush->Style=bsClear; /* чтобы круг,
нарисованный методом Ellipse, не был закрашен
рисуем кольца */
Canvas->Pen->Color = clBlue;
Canvas->Ellipse(40,40,80,80) ;
Canvas->Pen->Color = clBlack;
Canvas->Ellipse(70,40,110,80);
Canvas->Pen->Color = clRed;
Canvas->Ellipse(100,40,140,80);
Canvas->Pen->Color = clYellow;
Canvas->Ellipse(55,65,95,105);
Canvas->Pen->Color = clGreen;
Canvas->Ellipse(85,65,125,105);
}
Задание2.
Создайте программу, которая вычерчивает график функции y=sinx путем соединения отрезками прямой соседних точек. Если количество таких точек достаточно велико, то изломы становятся незаметными.
- Московский государственный университет
- Компоненты
- Событие и функция обработки события
- Редактор кода
- Система подсказок
- Навигатор классов
- Шаблоны кода
- Справочная система
- Сохранение проекта
- Компиляция
- Предупреждения и подсказки
- Компоновка
- Запуск программы
- Ошибки времени выполнения
- Внесение изменений
- Настройка приложения
- Название программы
- Значок приложения
- Перенос приложения на другой компьютер
- Структура простого проекта
- 2. Задание на выполнение работы
- 1. Электроэнергия.
- 2. Игра «угадай число».
- 3. Гороскоп
- 4. Межгород
- 6. Алфавит
- 7. Палиндром
- 8. Метеослужба
- 9. Статистика
- 10. Кафе.
- Лабораторная работа №22 Графика.
- Карандаш и кисть
- Графические примитивы
- Ломаная линия
- Прямоугольник
- Многоугольник
- Окружность и эллипс
- Лабораторная работа №23 Иллюстрации
- Битовые образы
- Мультипликация
- Метод базовой точки
- Использование битовых образов
- Загрузка битового образа из ресурса программы
- Создание файла ресурсов
- Подключение файла ресурсов
- Int w, h; // размер кадра
- Int с; // номер воспроизводимого кадра
- Лабораторная работа №25
- 1. База данных и субд
- Локальные и удаленные базы данных
- Структура базы данных
- Псевдоним
- Компоненты доступа и манипулирования данными
- Создание базы данных
- Доступ к базе данных Доступ к базе данных обеспечивают компонентыDatabase, Table, Query и DataSource.Значки этих компонентов находятся на вкладкахData Accessи bde(рис. 25.8).
- Отображение данных
- Манипулирование данными
- Выбор информации из базы данных
- Перенос программы управления базой данных на другой компьютер
- 2. Задание на выполнение работы
- Литература