Memo1 para ListView1 ?
02/06/2008
0
Abraços :wink:
Warfighter
Posts
02/06/2008
Fabianosales
var i : integer; li : TListItem; begin i:=0; ListView1.Items.BeginUpdate; ListView1.Items.Clear; while i < Memo1.Lines.Count do begin li := ListView1.Items.Add; li.Caption := Memo1.Lines[i]; Inc(i); end; ListView1.Items.EndUpdate; end;
03/06/2008
Pestana_
Obrigado!
05/06/2008
Warfighter
Funciono Perfeitamente :wink:
Abraços
var i : integer; li : TListItem; begin i:=0; ListView1.Items.BeginUpdate; ListView1.Items.Clear; while i < Memo1.Lines.Count do begin li := ListView1.Items.Add; li.Caption := Memo1.Lines[i]; Inc(i); end; ListView1.Items.EndUpdate; end;
30/06/2008
Pestana_
UP!
15/07/2008
Fabianosales
Quando um controle visual que manipula coleções de valores (como TListView, TMeno, TCombobox, etc..) tem sua lista de itens modificada, a vcl tenta redesenhar todo o controle na tela. Quando vários itens são adicionados de uma vez, o controle poderá piscar na tela (especialmente em máquinas lentas) e o processo de alteração da lista pode sofrerá uma queda de performance.
O uso do BeginUpdate e EndUpdate serve para impedir que isso aconteça. Quando BeginUpdate é chamado, o desenho do controle fica suspenso até que EndUpdate seja executado.
A grande probabilidade é que isso passe despercebido na máquina do desenvolvedor mas, em máquinas antigas, o efeito é bem visível (e bem desegradável :wink: ).
Veja o que diz o help do delphi
20/07/2008
Pestana_
valeu Fabiano!
você esclareceu esta dúvida que eu tinha, obrigado! :wink:
flw.
Clique aqui para fazer login e interagir na Comunidade :)