Как скрыть свойства объекта?

В иерархии VCL в большинстве случаев существует уровень объектов-"предшественников" (TCustomXXXX), в которых многие свойства скрыты. Для унаследованных от таких "предшественников" объектов можно "открывать" на выбор те или иные свойства. А как можно сокрыть свойства, которые объявлены в published-области от Object Inspector'а, но при этом оставить возможность доступа во время работы программы? Решение состоит в объявлении свойства "по новой" в public-области. В примере скрытым будет у объекта TMyControl свойство Height.


TMyControl = class(TWinControl)  
protected  
  procedure SetHeight(Value: Integer);  
  function GetHeight: Integer;  
public  
  property Height: Integer read GetHeight write SetHeight;  
end;  
  
procedure TMyControl.SetHeight(Value: Integer);  
begin  
  inherited Height := Value;  
end;  
  
function TMyControl.GetHeight;  
begin  
  Result := inherited Height;  
end;  
Теги:
свойства объекта
Добавлено: 31 Июля 2018 22:02:07 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...