Привет.
Был бы рад за помощь в решении маленькой задачки.
Есть объект (TMyObject), есть список с этими самими объектами (TObjectList<TMyObject>).
Как из списка узнать что объект изменили? В смысле изменили какое-то его свойство...
Пример:
TMyObject = class
oName: string;
end;
TMyObjectList = class(TObjectList<TMyObject>)
end;
procedure Form1.Button1.Click(Sender: TObject);
var
Obj: TMyObject;
List: TMyObjectList;
Begin
List:= TMyObjectList.Create;
Obj:= TMyObject.Create;
List.Add(Obj);
List[0].oName:= 'Ky'; // Вот тут неплохо бы узнать что объекту в списке изменили свойство
end;
Вообще задача в сохранении значений этих объектов сразу же после изменения. Беда в том что сохраняет все значения объект списка, а не сам единичный объект (там то это можно отловить через property т.е. сеттер). Можно конечно сделать специальный метод для изменения объектов в списке, но все равно их можно будет и так изменить, без этого метода, а это нехорошо
И просто вызывать метод сохранения после изменения тоже не хочется, в общем такой каприз, список должен сам как-то узнать что мир уже не станет прежним