КАТЕГОРИИ: Архитектура-(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; Просмотров: 403; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |