Quel est le meilleur algorithme Delphi pour afficher une vue d'arbre pour afficher une hiérarchie existante d'objets

StackOverflow https://stackoverflow.com/questions/5929620

Question

Cela semble vraiment simple, mais c'est comme un oignon - beaucoup de couches pendant que vous pelage. J'ai une hiérarchie de mes propres classes d'objets - un peu comme les composants sur une forme vraiment, en ce que l'un d'eux peut avoir des enfants et un parent. En haut, il y a un objet racine. Un autre code gère cette hiérarchie et il est possible que les branches ou les feuilles puissent être créées, supprimées ou renommées à tout moment. Je souhaite avoir une vue d'arbre (d'une sorte, probablement virtuelle) qui fournit une vue de cette hiérarchie de telle manière qu'il est possible d'avoir plusieurs de ces vues d'arbres, chacun se tirant de la hiérarchie d'objets si nécessaire.

J'ai déjà une solution utilisant Ttreeview de Delphi, mais elle s'appuie sur l'itération de la hiérarchie lorsqu'un drapeau «modifié» est augmenté et reconstruise les branches de vue d'arbre qui ont changé. C'est lent (je peux avoir plus de 1000 objets) et je voudrais un algorithme qui parvient à effectuer un changement d'arborescence pour une seule insertion d'objet ou suppression.

Est-ce possible?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top