Свои компоненты.
Мне нужно при создании своего компонента добавить ему свойство, которого у него нет. К примеру мне нужно добавить Canvas наследнику Tbutton. Помогите плиз.
Если я не ошибаюсь, у всех наследников TWinControl есть свойство Canvas, просто у некоторых оно скрыто.
У наследника TButton ты можешь вытащить его так:
Type
TButtonAncestor=class(TButton)
public
property Canvas;
end;
Мне нужно при создании своего компонента добавить ему свойство, которого у него нет. К примеру мне нужно добавить Canvas наследнику Tbutton. Помогите плиз.
Если ты хочешь вообще новое добавить то это можно сделать так:
Type
TButtonAncestor=class(TButton)
private
FNewProp1: <тип_данных_1>;
FNewProp2: <тип_данных_2>;
function GetNewProp2:<тип_данных_2>;
procedure SetNewProp2(value:<тип_данных_2>);
public
property NewProp1:<тип_данных_1>
read FNewProp1 write FNewProp1;
property NewProp2:<тип_данных_2>
read GetNewProp2 write SetNewProp2;
end;
function TButtonAncestor.GetNewProp2;
begin
...Здесь выполняем дополнительные действия
Result := FNewProp2;
end;
procedure TButtonAncestor.SetNewProp2;
begin
...Здесь выполняем дополнительные действия
FNewProp2 := value;
end;
За более подробной информацией обращайся к справочной информации Delphi, либо поковыряйся в исходниках VCL