Студопедия

КАТЕГОРИИ:


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

Понятие КОМПОНЕНТ

 

Понятие компонента

.

Существует два взгляда на компоненты.

· При работе с визуальной средой компоненты — это строительные блоки, которые выбираются из палитры компонентов и переносятся на форму.

· С точки зрения языка C++компоненты — это классы, порожденные прямо или косвенно от класса TComponent и имеющие опубликованные (__published) свойства. Экземпляры компонентов — объекты этих классов, существующие в качестве полей формы. Среди опубликованных свойств компонентов обязательно присутствует имя (Name), под которым экземпляр компонента представляется в инспекторе объектов.

Компонент =свойства + методы + события

· Свойства — это атрибуты компонента, которые определяют, как компонент отображается на экране и как функционирует. Свойства бывают изменяемые (для чтения и записи) и неизменяемые (только для чтения). В зависимости от времени установки свойства подразделяются на свойства времени проектирования (design time) и свойства времени выполнения (run-time). Первые устанавливаются для каждого компонента в инспекторе объектов и определяют начальное состояние компонента. Во время выполнения приложения эти свойства могут быть изменены операторами программы, соответственно изменится вид и поведение компонента. Вторая группа — это свойства, которые не отражены в инспекторе объектов и управлять которыми можно только из программы. С точки зрения языка C++, суть различия между свойствами времени проектирования и свойствами времени выполнения совсем проста — первые объявлены в своем классе в секции __ published, а вторые — в секции public.

· Методы. Вызовы методов компонента помещаются в исходный код программы и происходят только во время выполнения приложения. Методы не имеют под собой визуальной основы.

· События обеспечивают интерактивность компонентов, благодаря им приложение на C++Builder строится как программный автомат. В языке C++ события реализуются с помощью свойств, содержащих адреса методов (см. главу 2).

Визуальные и невизуальные компоненты

Как мы выяснили компоненты делятся на:

Визуальные компоненты (visual components) — это управляющие элементы пользовательского интерфейса (controls), т. е. кнопки, надписи, списки и др. Они видны на экране и выглядят одинаково на стадии проектирования и во время работы приложения. В этом их главное достоинство.

· Невизуальные компоненты (nonvisual components) — это "объекты-невидимки", они работают, но сами на экране не видны. К невизуальным компонентам относятся таймер, компоненты доступа к базам данным и др. На стадии проектирования невизуальный компонент представляется на форме небольшим значком. Его свойства устанавливаются в инспекторе объектов. Некоторые компоненты, хотя и являются невизуальными, могут что-нибудь отображать на экране в работающем приложении. Например, невизуальный компонент MainMenu отображает на форме строку главного меню, а невизуальный компонент OpenDialog — стандартное диалоговое окно выбора файла.

Управляющие элементы-окна и рисуемые управляющие элементы

Управляющие элементы пользовательского интерфейса подразделяются на управляющие элементы-окна и рисуемые управляющие элементы (рис. 3.30).

 

· Управляющие элементы-окна (windowed controls) являются специализированными окнами внутри окна формы. Их самое главное качество — способность получать фокус ввода. К числу управляющих элементов-окон относятся, например, компоненты Button, RadioButton, CheckBox, GroupBox и др. Некоторые управляющие элементы такого типа (например, GroupBox, TabControl, PageControl) способны содержать другие управляющие элементы пользовательского интерфейса и называются владельцами (container controls). Отрисовку управляющих элементов-окон выполняет операционная система Windows. Для профессионалов, имевших дело с Windows API, заметим, что управляющие элементы-окна имеют целочисленное свойство Handle. Благодаря ему обеспечивается связь компонента C++Builder с соответствующей структурой данных Windows.

· Рисуемые управляющие элементы (graphical controls) не являются окнами, поэтому не могут получать фокус ввода и содержать другие управляющие элементы. Их отрисовку полностью выполняет C++Builder. К числу рисуемых управляющих элементов относятся, например, компоненты Label, SpeedButton, Image, Bevel и др.

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

Невизуальные компоненты практически не имеют общих свойств и событий, только общие для них свойства — это Name (комментариев не требует) и Tag (целочисленное значение, не несущее смысловой нагрузки — вы можете использовать его по своему усмотрению). А вот управляющие элементы пользовательского интерфейса имеют много общих свойств и событий, которые мы сейчас и рассмотрим.

<== предыдущая лекция | следующая лекция ==>
Несколько форм в приложении | Визуальные и невизуальные компоненты
Поделиться с друзьями:


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


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



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




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