Студопедия

КАТЕГОРИИ:


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

План заняття. 1. Характеристика компонента Image




1. Характеристика компонента Image

2. Характеристика компонента Shape

3. Характеристика компонента Bevel

В стандартную библиотеку визуальных компонентов Delphi входит несколько объектов, с помощью которых можно придать программе более красивый, наглядный и оригинальный вид. Это такие компоненты, как Image, Shape, Bevel, PaintBox.

Компонент Ima ge позволяет поместить графическое изо­бражение в любое место на форме. Данный компонент довольно прост в использовании. Для включения этого объекта в состав приложения необходимо выбрать его на странице Additional Па­литры компонентов и поместить в нужное место формы. Изобра­жение можно загрузить во время дизайна в редакторе свойства Picture (Инспектор объектов). Файл изображения должен иметь формат BMP (bitmap), WMF (Windows Meta File), EMF (Windows Enhanced Meta File) или ICO (icon). Кроме этого, существует воз­можность отображать графические файлы в формате JPEG или JPG. Однако следует учесть тот факт, что при отображении ри­сунка в /данном формате исключается возможность применения методов рисования различных графических примитивов на по­верхности компонента Image.

Для работы с изображениями в формате JPEG или JPG также применяется специальный класс TJPEGImage. Чтобы использовать этот класс, необходимо в разделе uses подключить модуль JPEG.

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

Наиболее важными являются нижеперечисленные свойства объекта Image.

Свойство Picture (тип TPicture) определяет изображение, которое появится в поле компонента Image. При проектировании следует помнить, что изображение, помещенное на форму во время дизайна, включается в файл проекта DPR и затем присоединяется к исполняемому файлу. Поэтому такой ЕХЕ-файл может получиться достаточно большим. В качестве альтернативы можно рассмотрегь загрузку картинки во время выполнения программы.

Свойство Picture представляет собой объект со своим набо­ром свойств и методов. Изображение в данный объект может за­гружаться из разных источников, а именно:

■ из графического файла;

■ из другого компонента, содержащего изображение;

■ из файла ресурсов.

Для загрузки изображения из файла применяется метод LoadFromFile, который имеет следующий синтаксис:

LoadFromFile (const FileName: String);

Имя файла задается параметром FileName. Загружать рису­нок можно из графических файлов с расширением BMP, WMF, EMF, ICO или JPG.

Загрузка изображения из другого компонента выполняется с применением свойства класса TPicture, которое указывает тип графики в объекте-источнике, то есть свойство Bitmap для типа TBitmap, Icon для типа TIcon или MetaFile для типа TMetaFile. После чего для любого из этих свойств вызывается метод Assign, имеющий такой формат:

Assign (Source: TPersistent);

Пусть необходимо скопировать изображение типа TIcon из графического образа Image с именем Iml в другой образ с именем Im2. Это делается следующим образом:

Im2.Picture.Icon.Assign (Iml.Picture.Icon);

Загрузить изображения из файла ресурсов можно при помощи метода LoadFromResourceName, который имеет такой синтаксис:

LoadFromResourceName (Instance: THandle; const ResName: String)

Данный метод вызывается только для класса TBitmap.

Файл ресурсов подготавливается с помощью любого редактора ресурсов и перед использованием подключается к программному модулю директивой компилятора {$R Имя_файла_ресурсов }.

Для сохранения изображения, содержащегося в образе, ис­пользуется метод SaveToFile класса TPicture. Данный метод имеет следующий синтаксис:

SaveToFile (const FileName: String)

Свойство Center (тип Boolean), установленное в True, обеспечивает совмещение центра изображения с центром объекта TImage.

Свойство AutoSize (тип Boolean), установленное в True, обеспечивает автоматическое увеличение или уменьшение разме­ров компонента Image до размеров содержащегося в нем изобра­жения.

Свойство Stretch (тип Boolean), установленное в True, обеспечивает автоматическое сжатие или растягивание изображе­ния до размеров объекта Image. Данное свойство не действует на пиктограммы, которые загружаются со своими исходными разме­рами.

Если оба последних свойства установлены в False, а изобра­жение, загружаемое в графический образ, превосходит его по раз­мерам, то часть данного изображения, не попавшая в область компонента Image, будет отсекаться. Чтобы избежать этого, необ­ходимо либо устанавливать одному из свойств AutoSize или Stretch значение True (что бывает не всегда удобно и возмож­но), либо организовывать прокрутку изображений.

Рассмотрим простейший пример работы с графическим обра­зом.

Пример 10.3. Загрузка изображения из графического файла.

Решение. На созданную форму помещается компонент Imagel, кнопка Buttonl с заголовком Открыть и диалог OpenPictureDialogl. Свойству Stretch компонента Image присваивается значение True.

Программа, код которой представлен ниже, по нажатию кноп­ки Открыть вызывает диалог OpenPictureDialogl, затем открывает выбранный файл и помещает его содержимое в поле компонента Imagel, соответственно, сжимая или растягивая изо­бражение до установленных размеров графического образа.

 

 

 

Как видно из приведенного листинга, решение задачи оказа­лось довольно простым - потребовалось вставить всего лишь один оператор в тело обработчика события OnClick кнопки От­крыть. Результат работы программы будет иметь вид, показанный на рис. 10.3.

Компонент Shape предназначен для отображения про­стейших графических объектов (круг, квадрат и т.п.) на форме (см. рис. 10.4).

 

 

Данный компонент имеет следующие свойства.

Свойство Shape задает вид объекта и может принимать такие значения:

stCircle-круг;

stEllipse- эллипс;

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

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

stRoundSquare - квадрат с закругленными краями;

stSquare - квадрат.

Свойство Реп определяет цвет и вид границы объекта. Свойство Brush задает цвет и вид заполнения объекта.

Все эти свойства можно изменять как во время дизайна, так и во время выполнения программы.

Компонент Bevel представляет собой объект фаски для оформления программы с целью лучшего визуального воспри­ятия. Он может принимать вид рамки или линии. Объект предо­ставляет более скромные возможности по сравнению с Panel, но занимает меньше ресурсов. Внешний вид задается с помощью свойства Shape, которое может принимать одно из перечислен­ных ниже значений:

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

bsFrame - рамка;

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

bsBottomLine - линия снизу;

bsLef tLine - линия слева;

bsRightLine - линия справа;

■ bsSpacer - невидимая прямоугольная область.

Возможные варианты оформления компонента Bevel показаны на рис. 10.5.

 

 

Свойство Style определяет стиль оформления фаски и при­нимает одно из двух значений:

bsLowered - вдавленная (утопленная) фаска;

bsRaised - выпуклая (приподнятая) фаска.

Компонен т PaintBox используется для построения при­ложений типа графического редактора или, например, в качестве места построения графиков. Собственно, этот объект является просто областью для рисования. В данный компонент нельзя за­гружать готовые изображения. Существенно, что координаты ука­зателя мыши, передаваемые в обработчики соответствующих со­бытий (OnMouseMove и др.), являются относительными, то есть определяют смещение указателя мыши относительно левого верхнего угла объекта TPaintBox, а не относительно левого верх­него угла формы. Основным свойством данного компонента явля­ется свойство Canvas. Параметры шрифта, линий и заливки за­даются, соответственно, свойствами Font, Pen и Brush.

 

Контрольні питання

1. Навести характеристику компонента Image

2. Навести характеристику компонента Shape

3. Навести характеристику компонента Bevel


АУДИТОРНЕ ЗАНЯТТЯ

ЗМІСТОВИЙ МОДУЛЬ 2: ПРОЦЕДУРНО-ОРІЄНТОВАНЕ ПРОГРАМУВАННЯ. ПРОГРАМУВАННЯ ГРАФІКИ

ТЕМА 2.2: ГРАФІКА, МУЛЬТИМЕДІЯ ТА ДРУК

Лекція №23 – Введення в мультимедію




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


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


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



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




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