Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

PaintBox - окно для рисования




Класс TPicture

Класс TGraphic

Класс TBrush

Класс TPen.

Класс TFont.

Класс TCanvas

Этот класс создаёт “канву” – поверхность, на которой можно рисовать чертёжными инструментами – пером, кистью и шрифтом. Объекты класса TCanvas автоматически создаются для всех видимых компонентов, которые должны уметь нарисовать себя.

Свойства класса:

Свойство Значение
Brush Объект – кисть.
ClipRect Определяет текущие размеры области, нуждающиеся в прорисовке.
CopyMode Устанавливает способ взаимодействия растрового изображения с цветом фона.
Font Объект – шрифт.
LockCount Счётчик блокировок канвы. Увеличивается на единицу при каждом обращении к методу Lock и уменьшается при обращении к Unlosk.
Pen Объект – перо.
PenPos Определяет текущее положение пера в пикселях относительно левого верхнего угла канвы.
Pixels(X,Y:Integer) Массив пикселей канвы.

Методы класса:

Метод Назначение
Arc(x1,y1,x2,y2,x3,y3,x4,y4) Чертит дугу эллипса в охватывающем прямоугольнике (х1,у1)‑(х2,у2). Начало дуги лежит на пересечении эллипса и луча, проведенного из его центра в точку (х3,у3), а конец – на пересечении с лучом из центра в точку (х3,у4)
Chord(x1,y1,x2,y2,x3,y3,x4,y4) Чертит сегмент эллипса в охватывающем прямоугольнике (х1,у1)‑(х2,у2)
Ellipse(x1,y1,x2,y2) Чертит эллипс в охватывающем прямоугольнике (х1,у1)‑(х2,у2). Заполняет все внутреннее пространство эллипса текущей кистью
FillRect(const Rect) Заполняет текущей кистью прямоугольную область Rect, включая ее левую и верхнюю границы, но не затрагивая правую и нижнюю
LineTo(x,y) Чертит линию от текущего положения пера до точки (х,у)
MoveTo(x,y) Перемещает перо в положение (х,у) без вычерчивания линий
PolyGon(points: array of points) Вычерчивает пером многоугольник по точкам, заданным в массиве points. Конечная соединяется с начальной, и многоугольник заполняется кистью
PolyLine(points: array of points) Вычерчивает пером ломаную прямую по точкам, заданным в массиве points
Rectangle(x1,y1,x2,y2) Вычерчивает и заполняет прямоугольник (х1,у1)‑(х2,у2)
Refresh Устанавливает перо, кисть и шрифт по умолчанию
TextHeight(const Text:string):integer Возвращает высоту прямоугольника, охватывающего текстовую строку Text
TextOut(x,y:integer;const Text:string) Выводит текстовую строку Text так, чтобы левый верхний угол прямоугольника, охватывающего текст, располагался в точке (x,y)  
TextWidth(const Text:string):integer Возвращает ширину прямоугольника, охватывающего текстовую строку Text
TextRect(rect:Trect; x,y:integer; Text:string); Выводит текстовую строку Text так, чтобы левый верхний угол прямоугольника, охватывающего текст, располагался в точке (x,y)  

 

С помощью класса TFont создается объект – шрифт для любого графического устройства (экрана, плоттера, принтера и т.д.).

Свойства класса:

Свойство Значение
CharSet Набор символов. Для русскоязычных программ это свойство обычно имеет значение Default_CharSet.
Color Цвет шрифта
FontAdapter Поставляет информацию о шрифте в компоненты ActiveX
Height Высота шрифта в пикселях экрана
Name Имя шрифта. По умолчанию имеет значение MS Sans Serif
Pitch Определяет способ расположения букв в тексте: значение fpFixed задает моноширинный текст, при котором каждая буква имеет одинаковую ширину; значение fpVariable определяет пропорциональный текст, при котором ширина буквы зависит от ее начертания; fpDedault определяет ширину, принятую для текущего текста
PixelPerInch Определяет количество пикселей экрана
Size Высота шрифта в пунктах
Style Стиль шрифта. fsBold ‑ жирный fsItalic ‑ курсив fsUnderline ‑ подчеркнутый fsStrikeOut ‑перечеркнутый

С помощью класса TPen создается объект-перо, служащий для вычерчивания линий.

Свойства класса:

Свойство Значение
Color Цвет шрифта
Mode Определяет способ взаимодействия линий с фоном.
Style Определяет стиль линий. Учитывается только толщина линий 1 пиксель. Для толстых всегда psSolid(сплошная)
Width Толщина линий в пикселях экрана

 

Свойство Mode может принимать одно из следующих значений:

 

§ pmBlack Линии всегда черные

§ pmWhite Линии всегда белые

§ PmNop Цвет фона меняется

§ PmNot Инверсия цвета фона

§ PmCopy Цвет линий определяется свойством Color пера

§ PmNotCopy Инверсия цвета пера

§ PmMergePenNot Комбинация цвета пера и инверсионного цвета фона

§ PmMaskPenNot Комбинация общих цветов для пера и инверсионного цвета фона

§ PmMerge Комбинация цветов пера и фона

§ PmNotMerge Инверсия цветов пера и фона

§ PmMask Общие цвета пера и фона

§ PmNotMask Инверсия общих цветов пера и фона

Свойство Значение
BitMap Содержит растровое изображение, которое будет использоваться кистью для заполнения. Если это свойство определено, свойства Color и Style игнорируются.
Color Цвет кисти.
Style Стиль кисти.

 

Это абстрактный класс, инкапсулирующий общие свойства и методы своих потомков: пиктограмм (TIcon), метафайла (TMetafile) и растрового изображения (TBitmap). Общей особенностью потомков TGraphic является то, что обычно они сохраняются в файлах определенного формата.

Пиктограммы представляют собой небольшие растровые изображения, снабженные специальными средствами, регулирующими их прозрачность. Метафайл – это изображение, построенное на графическом устройстве с помощью специальных команд, которые сохраняются в файле с расширением WMA или EMF. Растровые изображения – это произвольные графические изображения в файлах со стандартным расширением BMP.

Свойства класса:

Свойство Значение
Empty Содержит True, если с объектом не связано графическое изображение.
Height Содержит высоту изображения в пикселях
Palette Содержит цветовую палитру графического объекта
Transparent Содержит True, если объект прозрачен для фона, на котором изображен.
Width Содержит ширину изображения в пикселях

 

Методы класса:

Методы Назначение
LoadFromFile(const FileName: string) Загружает изображение из файла FileName
SaveToFile(const FileName: string) Сохраняет изображение в файле FileName

 

 

Полнофункциональный класс TPicture инкапсулирует в себе все необходимое для работы с готовыми графическими изображениями - пиктонраммой, растром или метафайлом. Его свойство Graphic может содержать объект любого из этих типов.

 

Свойства класса:

Свойство Значение
Bitmap Интерпретирует графический объект как растровое изображение
Graphic Содержит графический объект
Height Содержит высоту изображения
Icon Интерпретирует графический объект как пиктограмму
Metafile Интерпретирует графический объект как метафайл
Width Содержит ширину изображения в пикселях

 

 

Методы класса:

Метод Назначение
LoadFromFile(const FileName: string) Загружает изображение из файла FileName
SaveToFile(const FileName: string) Сохраняет изображение в файле FileName

 

Компонент PaintBox простое окно с канвой для рисования произвольных изображений.

Канва содержится в свойствах Canvas компонента, графические инструменты – в свойствах Font, Pen и Brash. А собственно рисование осуществляется в обработчике события OnPaint.




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 535; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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