- •Создание компонентов в
- •Пакеты компонентов
- •Объявление класса
- •Объявление класса
- •Объявление класса
- •unit QMyButton; interface
- •Создание простых свойств
- •Создание простых свойств
- •Пример создания простых свойств
- •Создание перечислимого свойства и
- •Создание перечислимого свойства и
- •Пример создания перечислимого
- •Пример создания перечислимого
- •Пример создания перечислимого
- •Пример создания перечислимого
- •Создание свойства-массив
- •Создание свойства-массив
- •Создание свойства-массив
- •Создание свойства-массив
- •Создание свойства-массив
- •Создание свойства-объект
- •Создание свойства-объект
- •Создание свойства-объект
- •Создание свойства-объект
- •Создание свойства-объект
- •Инсталляция компонента
- •Определение нового пакета компонентов
Создание свойства-объект
Свойства-объекты содержат другие свойства. Например, свойством- объектом является свойство Font. Значение этих свойств можно изменять с помощью Инспектора объектов, возможно и создание специального редактора.
Свойство-объект можно создать на основе типа какого-либо объекта. Описание типа объекта представляет собой описание класса, предком которого является класс TPersistent и его потомки.
Перед использованием нового объекта он должен быть предварительно создан, а после использования удален.
Создание свойства-объект
TMyObject = class(TPersistent)
private
{ Private declarations } FObjectNumber: integer; FObjectAttrib: boolean; FObjectName: string; protected
{Protected declarations } public
{Public declarations } published
property ObjectNumber: integer read FObjectNumber write FObjectNumber; property ObjectAttrib: boolean read FObjectAttrib write FObjectAttrib; property ObjectName: string write FObjectName;
end;
22
Создание свойства-объект
TMyButton = class(TButton) private
{ Private declarations } FMyObject: TMyObject;
protected
{Protected declarations } public
{Public declarations }
constructor Create (AOwner: TComponent); override; { override – отвергать} destructor Destroy; override;
published
{ Published declarations }
property MyObject: TMyObject read FMyObject write FMyObject; end;
procedure Register;
23
Создание свойства-объект
implementation
constructor TMyButton.Create (AOwner : TComponent); Begin
inherited; {Inherited – Используется для вызова родительского класса конструктора или метода деструктора}
FMyObject:= TMyObject.Create End;
destructor TMyButton.Destroy; Begin FreeAndNil(FMyObject); inherited;
End;
24
Создание свойства-объект
25
Инсталляция компонента
Для размещения компонента в Палитре компонентов его нужно инсталлировать. Вызвать диалоговое окно для инсталляции компонента можно, например, командой Component / Install Component. Инсталляцию компонента можно выполнять только после сохранения файла модуля диска.
Определение нового пакета компонентов
27