Редактор свойств TCollection с редактируемыми столбцами
-
21-09-2019 - |
Вопрос
для моего собственного потомка TCollection я хочу расширить редактор свойств коллекции.Я хочу увидеть больше столбцов для других свойств моего TCollectionItem.И мне повезло, потому что это довольно просто.Единственное, что я хочу сделать, это переопределить эти три метода
TAttributeList = class(TOwnedCollection)
private
...
protected
function GetAttrCount: Integer; override;
function GetAttr(Index: Integer): string; override;
function GetItemAttr(Index, ItemIndex: Integer): string; override;
public
...
end;
чтобы получить количество столбцов, заголовок столбца и значение столбца для элемента коллекции.
Теперь я хочу отредактировать ячейки атрибутов.На этом fun заканчивается, и я должен сам написать полный редактор коллекций (возможно, как копию TCollectionEditor в unit ColnEdit.pas)?
Я надеюсь, что есть что-то более простое, но в остальном мне интересны примеры создания сложного TCollectionEditor.
Ciao Heinz Z.
Решение
Цель здесь состоит в том, чтобы предоставить эти дополнительные атрибуты столбца в качестве опубликованных свойств самих TCollectionItem .Таким образом, когда вы выбираете элемент, он выбирается в инспекторе объектов, где затем вы можете редактировать и изменять значения.
Просто создайте потомок TCollectionItem и опубликуйте свойства, которые представляют дополнительные атрибуты, которые вы хотите сделать доступными для редактирования.Убедитесь, что при создании потомка TCollection вы указали свой тип TCollectionItem для создания экземпляра.