Usando TCollection com uma classe já definida
-
11-09-2019 - |
Pergunta
(Nota: Este é algo relacionado a minha última pergunta ).
Eu sou novo para usar TCollection em Delphi, e ainda estou quebra minha cabeça em torno de as várias maneiras para lidar com as relações de classe / propriedade de item de um-para-muitos. Explorando TCollection e TCollectionItem, eu corri para algumas perguntas:
1) É possível usar TCollection ou TOwnedCollection para uma propriedade TForm? (Não tentei ainda, mas estou querendo saber com antecedência se sua built-in objeto capacidades Inspector vai causar problemas).
2) Se ninguém nunca quer usar alguma classe-em outro lugar já definido, que não pode descer diretamente de TCollectionItem, com TCollection (ou seja, tipo de "como" a "TCollectionItem"), isso pode ser feito? Se assim for, é que algo que se realizaria por meio de interfaces? ... ou o que seria a melhor abordagem?
Solução
-
Para o inspetor de objeto, não importa em qual componente as propriedades são definidas. Desde um TForm desce do TComponent, é possível.
-
A maneira mais fácil é escrever uma classe wrapper (vamos chamá-lo W) em torno de sua classe em outros lugares já definido (vamos chamá-lo A). Cada instância do X possui e encapsula A.
- jeroen