Bonjour, donc comme le titre l'indique le post va traiter d'un soucis de lenteur
dans le TTreeView en effet je travaille sur un outil de lecture de fichier que je
rebalance dans un arbre. Mon soucis et que la construction de l'arbre me prend environ 2 bonnes grosses minutes. Après quelque recherche je suis tombé sur 2 solutions l'utilisation de BeginUpdate et EndUpdate et l'envoie du message WM_SETREDRAW pour empécher le refresh a chaque ajout de noeud.
Mais sans résultat en effet le temps de construction varie de 1 ou 2 secondes avec ces solutions.
Ca viens peut être de l'utilisation des fonctions donc je vous expose mon Code :
Pas besoin de commentaire pour designer la fonction qui construit l'arbre...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 tv->Visible = false; tv->Items->BeginUpdate(); tv->Perform(WM_SETREDRAW,0,0); _gestionLectureEDI->LireFichierEDI(edChemin->Text); _gestionLectureEDI->ConstruireArbre(tv); tv->Perform(WM_SETREDRAW,1,0); tv->Items->EndUpdate(); tv->Visible = true;
Voila si vous avez une idée je suis en panne d'inspiration pour le moment.
Partager