Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Компоненты Delphi, их свойства.




Основной упор объектно-ориентированной модели программных компонент в Delphi делается на максимальном реиспользовании кода. Это позволяет разработчикам строить приложения весьма быстро из заранее подготовленных объектов, а также дает им возможность создавать свои собственные объекты для среды Delphi. Никаких ограничений по типам объектов, которые могут создавать разработчики, не существует. Действительно, все в Delphi написано на нем же, поэтому разработчики имеют доступ к тем же объектам и инструментам, которые использовались для создания среды разработки. В результате нет никакой разницы между объектами, поставляемыми Borland или третьими фирмами, и объектами, которые вы можете создать.

В стандартную поставку Delphi входят основные объекты, которые образуют удачно подобранную иерархию из 270 базовых классов. Delphi присуща открытая компонентная архитектура. Благодаря такой архитектуре приложения, изготовленные при помощи Delphi, работают надежно и устойчиво. Delphi поддерживает использование уже существующих объектов, включая DLL, написанные на С и С++, OLE сервера, VBX, объекты, созданные при помощи Delphi. Из готовых компонент работающие приложения собираются очень быстро. Кроме того, поскольку Delphi имеет полностью объектную ориентацию, разработчики могут создавать свои повторно используемые объекты для того, чтобы уменьшить затраты на разработку.

Delphi предлагает разработчикам - как в составе команды, так и индивидуальным - открытую архитектуру, позволяющую добавлять компоненты, где бы они ни были изготовлены, и оперировать этими вновь введенными компонентами в визуальном построителе. Разработчики могут добавлять CASE-инструменты, кодовые генераторы, а также авторские help’ы, доступные через меню Delphi.

Two-way tools - однозначное соответствие между визуальным проектированием и классическим написанием текста программы Это означает, что разработчик всегда может видеть код, соответствующий тому, что он построил при помощи визуальных инструментов и наоборот.

Визуальный построитель интерфейсов (Visual User-interface builder) дает возможность быстро создавать клиент-серверные приложения визуально, просто выбирая компоненты из соответствующей палитры.

Все объекты в Delphi являются производными от одного класса Tobject.У него нет явных полей, однако имеется скрытое поле для указания на VMT – Virtual Metod Table(таблица виртуальных методов). Именно в виде VMT представляется класс в Delphi. В этойы таблице содержаться указатели на методы класса и другая информацияо классе, доступная только для чтения. Объект в Delphi –это участок памяти, где delphi хранит значения всех полей объекта. Ссылка на объект – это уазатель на объект. В Delphi с объектом можно работать только через ссылку на него. Однако для краткости термин ссылка на объект часто сокращается до объект, хотя следует все-таки понимать настоящий смысл этих опредлений. Рассмотрим некоторые свойства класса Tobject:

Методы класса:

ClassInfo – возвращает указатель на таблицу TtypeInfo класса

ClassNameIs – Проверяет соответствует ли данная строка имени класса

ClassParent – Возвращает метакласс, непсредственного базового класса. Для Tobject вернется nil, т.к у него нет базового класса

Create – Конструктор. Не выполняет никаких действий! Существует для того, чтобы можно было вызвать унаследованный конструктор из конструктора при создании экземпляра любого другого класса.

GetInterfaceEntry – Выполняет поиск интерфейса в классе и его родительских классах по GUID.

InheritsFrom – проверяет класс, совпадает ли он с типом класса, переданным в качестве аргументаи является ли его потомком. Этот метод использую операторы As и Is.

InstanceSize – Возвращает количество байт, которые требуются экземпляру класса.

MethodAddress – Получает указатель на область памяти, выделенную для объекта и инициализирует ее.

MethodName, MethodAddress – позволяют получить имя метода по его адресу, и адрес метода по его имени.

NewInstance – создает новый экземпляр объекта и инициализирует объект.

 

Методы Объекта:

AfterConstruction – Delphi вызывает метод, после того как завершилось выполнение кода конструктора

BeforeDestruction– Delphi вызывает метод, перед тем как исполнять код деструктора

ClassType – возвращет ссылку на метакласс объекта, который является указателем на VMT

DefaultHandler – обработчик сообщений по умолчанию

Free – используется для уничтожения объекта.

GetInterface – выполняет поиск GUID и выбирает соответствующий интерфейс.

Здесь перечислены не все методы класса и объекта, однако наиболее часто используемые.Delphi на ряду со стандартными средствами ООП (классы, наследование, инкапсуляция и.т.д.) дает ряд расширенных средств работы. Например сообщения. В Delphi любой объект, а не только управляющие элементы, может реагировать на сообщения. Каждое сообщение имеет уникальный целый идентификатор и может содержать любое количество дополнительной информации. Другими словами, сообщения Windows являются частным случаем более общих сообщений Delphi.

В стандартную поставку Delphi входят основные объекты, которые образуют удачно подобранную иерархию из 270 базовых классов. На рисунке приведена часть иерархии.

Рассмотрим основные классы этой иерархии:

Tobject – базовый класс для всех.

TStream – базовый класс для организации потоков данных. Используется, например, для ввода – вывода в файл.

Exception – базовый класс для всех классов- исключений. Delphi естественно поддреживается структурная обработка исключений. И доступ к структуре исключения обеспечивается через этот класс и его наследники.

TinterfacedObject – служит базовым классом, для всех объектов поддерживающих интерфейс, так как в нем реализованы основные методы для поддрежки интерфейсов.

TcomObject – базовый класс для создания Com-объектов.

Tcomponent - Все компоненты Delphi – должны наследоваться от этого класса или его потомков. Компоненты Delphi – это те объекты, которыми можно манипулировать в режиме дизайна. В качестве примера можно привести все управляющие элементы(кнопки, radiobutton, Checkbox, memo, и т.д.)

tWinControl – большинстов визуальных компонентов наследованы от него. От него наследованы все классы – управляющие элементы Windows. Следует отметить, что существует и “ветка” классов реализующих кроссплатформенный код, т.е. в зависимости от платформы (ОС) –код классов, компилируется в код для этой ОС.


 


Поделиться:

Дата добавления: 2015-04-18; просмотров: 287; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты