Турбо Паскаль 6.0

         

Тип TStreamRec Objects


================================================================= Объявление TStreamRec = ^TStreamRec; TStreamRec = record ObjType: Word; VmLink: Word; Load: Pointer; Store: Pointer; Next: Word; end;

Функция Тип объекта Turbo Vision должен быть зарегистрирован TStreamRec, до его загрузки или сохранения на объекте TStream. Подпрограмма RegisterTypes регистрирует тип объекта записью TStreamRec.

Поля в регистрационной записи потока определены:

Таблица 14.33. Поля записи потока.

-------------------------------------------------------------- Поле Содержимое -------------------------------------------------------------- ObjType Уникальный числовой идентификатор для типа объекта VmtLine Связь типа объекта с элементом VMT Load Указатель на констрактор Load объектного типа Store Указатель на метод Store объектного типа Next Указатель на следующую TStreamRec --------------------------------------------------------------

Turbo Vision резервирует значения идентификаторов объектных типов от 0 до 999 для внутреннего использования. Программист может определить свои значения в диапазоне от 1,000 до 65,535. По соглашению, tStreamRec для типа объекта Txxxx называется Rxxxx. Например, TStreamRec для типа TCalculator называется RCalculator, как показано в следующем коде:

type TCalculator = object(TDialog) constructor Load(var S: TStream); procedure Store(var S: TStream); . end;

const RCalculator: TStreamRec = ( ObjType: 2099; VmtLink: Ofs(TypeOf(TCalculator)^); Load: @TCalculator.Load; Store: @TCalculator.Store);

begin RegisterType(RCalculator); . end;

См. также RegisterType



Содержание раздела