Студопедия

КАТЕГОРИИ:


Архитектура-(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. Характеристика властивостей візуальних компонентів Тор; Width; Height




1. Характеристика властивостей візуальних компонентів Тор; Width; Height.

2. Огляд елементів керування візуальних компонентів

3. Поняття фокусу та події

Как уже было отмечено, компоненты делятся на две категории –визуальные и невизуальные. Невизуальные компоненты характери­зуются тем, что при работе программы они просто невидимы. С дру­гой стороны, визуальные компоненты после запуска программы ви­димы, если их специально не скрывают. Как правило, внешний вид визуальных компонентов на этапе разработки и в процессе выполне­ния программы совпадает, хотя и может изменяться динамически в зависимости от различных условий. Визуальные компоненты назы­вают элементами управления. Все компоненты Delphi являются по­томками класса Tcomponent. Класс Tcontrol является базовым классом для визуальных компонентов. У класса Tcontrol есть два наследника, определяющие две группы компонентов – имеющие оконный ресурс (TwinControl и его потомки) и не имеющие этого ресурса (TgraphicControl и его потомки). Оконный ресурс пред­ставляет собой специальный ресурс Windows, используемый для соз­дания окон, а также для получения и обработки сообщений Windows. Другими словами, только компоненты-потомки класса TwinControl могут получать и обрабатывать сообщения Windows. К компонентам с оконным ресурсом относятся однострочные и многострочные редак­торы, кнопки, линейки скроллинга, переключатели и т.д., а также различные панели и группирующие элементы управления, в которых размещаются другие компоненты. Элементы графического типа не имеют оконного ресурса. К ним относятся метки, геометрические фигуры, рамки, изображения, панели для рисования и т.д.

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

Рассмотрим самые общие свойства, которые имеются у всех визуальных компонентов.

Свойства. Управление положением компонента на экране и его размерами осуществляется с помощью четырех его свойств Left – горизонтальная координата левого верхнего угла;

Тор – вертикальная координата левого верхнего угла;

Width – ширина;

Height – высота.

Для всех компонентов эти свойства задаются в пикселях отно­сительно координат клиентской части родительского компонента {клиентской частью компонента называется его внутренняя об­ласть, за исключением заголовка, рамки и меню). Изменение этих свойств возможно как на этапе конструирования, так и на этапе выполнения программы, что приводит к немедленному изменению размеров и расположения компонентов. Пусть, к примеру, на форме находятся две кнопки – Buttonl и Button2 класса Tbutton, высота которых 25 пикселей, а ширина 75. Для того чтобы размеры кнопки Button2 стали* в два раза больше, можно увеличить разме­ры кнопки в Инспекторе объектов либо в обработчике нажатия кнопки Buttonl написать две строки:

 

Button2.Width:=150; Button2.Height: =50;

 

В первом случае размеры кнопки изменятся на этапе конструи­рования (и сохранятся на момент запуска программы), а во втором случае изменение произойдет при выполнении программы.

Все элементы управления имеют свойство Enabled, которое управляет доступностью компонента в тот или иной момент вре­мени. Другими словами, данное свойство определяет, должен ли этот элемент реагировать на события клавиатуры, таймера или мыши. При значении этого свойства False элемент управления считается отключенным и изображается серым цветом.

Свойство Parent также доступно для всех элементов управ­ления. В этом свойстве содержится ссылка на родительский эле­мент управления, который содержит данный элемент.

Способ выравнивания элемента управления внутри своего ро­дительского компонента задает свойство Align. Возможные ва­рианты выравнивания описаны в табл. 4.1. Всем элементам управ­ления это свойство доступно во время выполнения программы, и большинству компонентов оно доступно также на этапе конст­руирования (Tlabel, Tpanel, Tmemo и другие).

Цвет и стиль заливки элемента управления задается свойством Brush, которое доступно только во время работы программы и только для чтения.

В Windows компоненты с оконными ресурсами называются родительскими, а связанные с ними неоконные – дочерними. Сле­дует отметить, что оконные компоненты тоже могут быть дочер­ними по отношению к родительскому оконному элементу. Не­оконный элемент может быть только дочерним и не может играть роль родительского. Родитель с дочерними элементами рассмат­ривается в Windows как единое целое. Другими словами, при по­явлении родителя на экране появляются и его дочерние компо­ненты. А при закрытии родителя его дочерние элементы также исчезают вместе с ним. К тому же дочерние компоненты не могут выходить за границы родителя. Хотя, как правило, эти требования выполняются автоматически, о них следует помнить и соблюдать неукоснительно, иначе программы могут выдавать непредсказуе­мые результаты.

 

Свойство Visible позволяет управлять отображением эле­мента на экране (если True, то компонент виден).

Для того чтобы узнать, отображается оконный элемент управ­ления на экране во время выполнения программы или нет, исполь­зуется свойство Showing. Это свойство доступно только для чте­ния и имеет значение True, если свойство Visible имеет значе­ние True, либо False, если Visible = False.

Сделать элемент управления или форму видимыми можно при помощи вызова метода Show, который присваивает свойству Visible значение True. Метод Hide делает невидимым элемент управления, присваивая свойству Visible значение False.

Цвет фона большинства элементов управления задается свой­ством Color, которое доступно как на этапе разработки, так и в момент выполнения программы.

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

Свойство Cursor позволяет изменять форму указателя мыши, когда он находится над элементом управления.

Текст краткой всплывающей подсказки устанавливается свой­ством Hint, а свойство ShowHint определяет, будет ли данная справка отображаться на экране в момент выполнения программы.

Размещаемый в элементе управления текст задастся либо свойством Text, либо свойством Caption.

Для элементов управления оконного типа используется свой­ство Ctl3D (эффект трехмерного изображения). Свойством HelpContext задается номер раздела справочной системы, вы­водимой на экран при нажатии клавиши F1.

Свойства ParentColor, ParentFont, ParentShowHint, ParentCtl3D используются для совместимости с родительски­ми элементами.

Фокус. Из всех элементов управления, расположенных на форме, в процессе работы программы один компонент всегда отличается от других. Этот элемент называется активным и может быть только элементом оконного типа. Если элемент активен, то говорят, что он «имеет фокус». С помощью клавиши Tab фокус поочередно перехо­дит к каждому объекту формы. Для того чтобы элемент управления стал активным, необходимо выполнение нескольких условий:

■ все его родительские компоненты, а также он сам должны быть видимы на экране (у всех них свойство Visibl должно быть True);

■ свойство Enabled всех этих компонентов должно быть True (значение этого свойства говорит о том, что компо­нент может быть активным);

■ он должен находиться в активной форме;

■ элемент управления должен быть активизирован либо мышью, либо программно (метод SetFocus), либо кла­вишей Tab.

Следует также отметить, что фокус могут иметь только эле­менты с оконным ресурсом.

События. У всех без исключения компонентов Delphi, как и у объектов реального мира, существует свое поведение – набор откли­ков на события, происходящие с ними. Список событий для каждого «компонента, на которые он реагирует, представлен в Инспекторе объектов на странице Events. Поведение объекта определяется тем, какие обработчики и для каких событий он имеет. Создание прило­жения в Delphi заключается, прежде всего, в настройке свойств ис­пользуемых объектов и создания обработчиков событий с примене­нием соответствующих методов. Все действия пользователей при работе с приложением сводятся к нажатию клавиш, кнопок мыши и перемещению мыши по экрану (кроме этого существуют еще собы­тия, не инициируемые пользователем, например, поступление сигна­лов от таймера). На все эти действия приложение должно реагиро­вать соответствующим образом, для чего должны быть предусмотре­ны необходимые процедуры обработки событий.

 

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

1. Навести характеристику властивостей візуальних компонентів Тор; Width; Height.

2. Охарактеризувати елементи керування візуальними компонентами

3. Надати поняття фокусу та події

 


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

ЗМІСТОВИЙ МОДУЛЬ 6: ПРОГРАМУВАННЯ З ГРАФАМИ. ВІЗУАЛЬНІ КОМПОНЕНТИ. БАЗИ ДАНИХ

ТЕМА 6.2: ВІЗУАЛЬНІ КОМПОНЕНТИ

Лекція №37 – Події миші

Лекція №38 – Події клавіатури




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


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


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



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




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