Pergunta

Estou desenvolvendo vários componentes, e regularmente correr para a necessidade de ter uma propriedade que tem um relacionamento "um-para-muitos", propriedade-membro componente para. Os componentes são muitas vezes componentes visuais, mas nem sempre, e às vezes precisa ser registrado com o IDE (ou seja, usar o Inspetor de propriedades), mas nem sempre. Encontro-me inseguro de qual caminho a tomar quando configurar essas propriedades - usando uma propriedade de matriz, um TList, um TStringList, um TCollection, ou algo completamente diferente (talvez uma nova classe que herda de um daqueles)

O que são as "melhores práticas" / orientações para qual usar quando / onde?

Foi útil?

Solução

Se eles são propriedades, você pode descer do TCollection, e então o IDE e Objeto Inspector irá fornecer automaticamente suporte para eles através do editor TCollection propriedade.

Outras dicas

TObjectList e TInterfaceList / IInterfaceList são os meus favoritos. E há TThreadList para listas de thread-safe. Todos eles estão disponíveis em Delphi 6 (ou mesmo antes).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top