Ciao!
Siccome ho molti oggetti da inserire in albero e il reflesh dell' albero per questo dura abbastanza, c' è un modo per congelarlo e reflesciarlo solo quando ha caricato tutti i nodi?
Ciao!
Siccome ho molti oggetti da inserire in albero e il reflesh dell' albero per questo dura abbastanza, c' è un modo per congelarlo e reflesciarlo solo quando ha caricato tutti i nodi?
Innanzi tutto metti autoexpand=false, poi
la prima roba che mi viene in mente è mettere Visible:=False; durante il caricamento.
Ciao
Grazie Nic11!
Ora in reflesh è umano e io son molto più rilassato!
Non ho il compilatore a portata di mano, quindi non posso verificarlo, ma se non ricordo male la proprietà Items del controllo TTreeView supporta i metodi BeginUpdate ed EndUpdate che consentono, rispettivamente, di segnalare l'inizio delle operazioni sui nodi della struttura e la corrispondente fine.
In questo modo, la generazione di eventi e l'intercettazione di modifiche durante la revisione della struttura vengono bloccate e rimandate ad un unico aggiornamento che avviene sulla chiamata del metodo EndUpdate.codice:TreeView1.Items.BeginUpdate; try // ...operazioni sui nodi... finally TreeView1.Items.EndUpdate; end;
Non è strettamente necessario, in sostanza, nascondere il controllo visuale.
Ciao!
MARCO BREVEGLIERI
Software and Web Developer, Teacher and Consultant
Home | Blog | Delphi Podcast | Twitch | Altro...
Grazie alka!
in effetti questa metodo è anche più pulito
...e io sono sempre più rilassato!