Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Свойства компонента Bevel




Shape - определяет геометрическую форму компонента - может быть одной из принадлежащих множеству:

bsBox (прямоугольник);

bsFrame (рамка);

bsTopLine (линия сверху);

bsBottomLine (линия снизу);

bsLeftLine (линия слева);

bsRightLine (линия справа);

bsSpaser (прямоугольная область, невидимая при выполнении программы).

Style стиль компонента — может быть утопленный (bsLowered) или приподнятый (bsRaised).

Этот компонент предназначен только для оформления — с ним не связаны никакие события.

 

Рис.5.30.1.

Вид компонента для различных значений свойств приведен на рис.5.30.1.

 

5.18.2. Компонент Shape (класс TShape)

Предназначен для построения простейших графических объектов на форме типа круг, квадрат и т.п.

Страница Палитры компонентов Additional.

Этот компонент предназначен только для того, чтобы нарисовать и показать на своей поверхности простейшую геометрическую фигуру (типа круг, квадрат и т.п.).

Свойства:

Shape - определяет рисуемую фигуру - одна из предопределенных в множестве:

stCircle (круг);

stEllipse (эллипс);

stRectangle (прямоугольник);

stRoundRect (прямоугольник со скругленными углами);

stRoundSquare (квадрат со скругленными углами);

stSquare (квадрат).

Размеры фигуры соответствуют размерам компонента. Если задан квадрат или круг, а ширина и высота компонента не равны между собой, то сторона или диаметр фигуры будут равны длине меньшей стороны компонента.

Свойство Pen (карандаш – класс Tpen) определяет цвет и вид границы объекта. Это свойство в свою очередь является объектом и обладает следующими свойствами:

Color - задает цвет границы;

Width - толщина линии;

Style - вид границы (сплошная, пунктир);

Mode – режим рисования.

Режим рисования определяет, в частности, способ комбинирования своего цвета с текущим цветом холста. Например, значение pmXor позволяет рисовать линии, которые при повторной отрисовке на том же месте исчезают. Это удобно, когда надо динамически отображать постоянно меняющиеся линии вслед за движущимся указателем.

Свойство Brush (кисть – класс TBrush) задает цвет и вид заполнения объекта Это свойство также является объектом и обладает следующими свойствами:

Color - цвет заполнения;

Style - вид заполнения (сплошное, вертикальные или горизонтальные линии, сетка).

Метод, исполняемый при изменении фигуры, кисти или пера

procedure StyleChanged(Sender: TObject); выполняет перерисовку компонента.

Пример.

Как во время выполнения программы можно изменять свойства объекта TShape. Изменение цвета объекта (событие OnChange для ColorGrid1):

  procedure TForm1.ColorGrid1Change(Sender: TObject);

begin

Shape1.Brush.Color:=ColorGrid1.ForeGroundColor;

end;

 

5.18.3. Компонент Image (класс Timage)

Пиктограмма:

Предназначен для создания графических изображений программным способом. А также позволяет поместить графическое изображение в любое место на форме. Страница Палитры компонентов Additional. Собственно картинку можно загрузить во время проектирования формы в редакторе свойства Picture (Инспектор Объектов). Картинка должна храниться в файле в одном из допустимых формате: BMP (bitmap), WMF (Windows Meta File) или ICO (icon).

Как известно, форматов хранения изображений гораздо больше трех вышеназванных (например, наиболее известны PCX, GIF, TIFF, JPEG). Для включения в программу изображений в этих форматах нужно либо перевести их в формат BMP, либо найти библиотеки третьих фирм, в которых есть аналог TImage, «понимающий» данные форматы (есть как VBX объекты, так и «родные» объекты для Delphi).

При проектировании следует помнить, что изображение, помещенное на форму во время дизайна, включается в файл.DPR и затем при компиляции будет присоединено к EXE файлу. Поэтому такой EXE файл может получиться достаточно большим. Как альтернативу можно использовать загрузку картинки во время выполнения программы, для этого у свойства Picture (которое является объектом со своим набором свойств и методов) есть специальный метод LoadFromFile. Это можно сделать, например, так:

if OpenDialog1.Execute then

Image1.Picture.LoadFromFile(OpenDialog1.FileName);

Важными являются свойства объекта Center и Stretch - оба имеют булевский тип. Если Center установлено в True, то центр изображения будет совмещаться с центром объекта TImage. Если Stretch установлено в True, то изображение будет сжиматься или растягиваться таким образом, чтобы заполнить весь объект TImage.

Свойства компонента Image:

Picture (класс TPicture). Задает графическое изображение, отображаемое внутри компонента, то есть служит контейнером для графического объекта одного из перечисленных классов. В качестве холста используется холст объекта Picture, либо Graphic — только если поле Graphic ссылается на объект класса Tbitmap.

Следующие три свойства определяют, как именно Tpicture располагается в рабочей области компонента:

AutoSize (Boolean) — означает, что размеры компонента настраиваются по размерам содержащегося в нем графического объекта. Устанавливать его в True нужно перед загрузкой изображения из файла или буфера обмена;

Stretch (Boolean) — если это свойство установлено в True, то изображение "натягивается" на рабочую область, при необходимости уменьшая или увеличивая свои размеры. Если оно установлено в False, то играет роль следующее свойство;

Center (Boolean) — если это свойство установлено в True, изображение центрируется в пределах рабочей области. В противном случае — располагается в ее верхнем левом углу.

Компонент Image обладает свойством Canvas, представляющее собой объект (класс Tcanvas), в котором сосредоточены все возможности по созданию изображений программным путем.

 

5.18.4. Класс TCanvas

TCanvas = class(TPersistent). Этот класс — сердцевина графической подсистемы Delphi. Он объединяет в себе и "холст" (контекст конкретного устройства GDI), и "рабочие инструменты" (перо, кисть, шрифт) и даже "подмастерьев" (набор функций по рисованию типовых геометрических фигур).

В дальнейшем для обозначения этого класса мы будем пользоваться термином "холст".

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

Дескриптор контекста устройства, над которьм "построен" холст", может быть востребован для различных низкоуровневых операций. Он задается свойством Handle: HDC;

Для рисования канва включает в себя шрифт, перо и кисть - свойства Font: (класс TFont); Pen (класс Tpen); Brush (классTBrush);.

Кроме того, можно рисовать и поточечно, получив доступ к каждому пикселу. Значение свойства Pixels[X, Y: Integer]: TColor соответствует цвету точки с координатами (X,Y).

Холст содержит методы-надстройки над всеми основными функциями рисования GDI Windows и свойства, которые приведены ниже в таблице. При их рассмотрении надо иметь в виду, что все геометрические фигуры рисуются текущим пером. Те из них, которые можно закрашивать, закрашиваются с помощью текущей кисти. Кисть и перо при этом имеют текущий цвет.




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


Дата добавления: 2014-01-04; Просмотров: 885; Нарушение авторских прав?; Мы поможем в написании вашей работы!


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



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




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