On-Line Библиотека www.XServer.ru - учебники, книги, статьи, документация, нормативная литература.
       Главная         В избранное         Контакты        Карта сайта   
    Навигация XServer.ru








 

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

В иерархии 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
;
Назад       Содержание       Вперёд