Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Как возвратить класс по его полю?


Автор: Ellochka 2.12.2007, 14:40
У меня есть класс TMain, полем которого является коллекция smile 
Соответсвенно описана и сама коллекция  -  класс TCol - 
                                и элементы коллекции  -  класс TColItem.

Разумеется входе конструирования экземпляров классов определено,
что свойство Collection, которое отправляет от экземпляра класса  TColItem
к его владельцу  - экцепляру класса TCol.


Код

TMain = class (TComponent)
  public
  Collect: TCol;
  field: byte;
end;


TCol = class(TCollection)
  public
  --------something------
end;

TColItem = class(TCollectionItem)
  public
  --------something------
  procedure METHOD;
end;



И ВОТ В ЧЕМ ПРОБЛЕМА:

Мне надо в некотором методе METHOD  класса TColItem  выйти на левое поле field 

класса TMain! На сколько я понимю, это можно сделать примерно так

Код

procedure TColItem.METHOD;
begin
  (Collection.<МЕТОД, ВОЗВРАЩАЮЩИЙ КЛАСС TMain, В КОТОРОМ ОПИСАНА ЭТА КОЛЛЕКЦИЯ Collection>).FIELD := SomeValue;
end;


Подскажите, пожалуйста, что это за функция, которая может возвратить мне  TMain!!!!

Автор: WaReZMEN 3.12.2007, 04:47
подробнее можно? (структуру классов)

Автор: MetalFan 3.12.2007, 09:19
ну так сохрани ссылку на нужный класс... в чем проблема то?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)