Sobre Repaint do TreeView

Delphi

13/05/2005

Pessoal estou com um TreeView Ligado num ImageList e uso duas imagens para simular um CheckListBox em cada nó da TreeView, sendo que quando seu ImageIndex é zero ele está ´desmardado´ e quando está em um está ´marcado´, no evento OnClick do TreeView coloquei um código para atualizar cada nó mas não está executando corretamente tái:
begin
  if TrVwControles.Selected.ImageIndex < 2 then
  begin
    if TrVwControles.Selected.ImageIndex = 0 then
      TrVwControles.Selected.ImageIndex := 1
    else 
     TrVwControles.Selected.ImageIndex := 0;
  end;
  TrVwControles.Repaint;
end;
O problema é que mesmo dando um repaint ele não está atualizando na tela...


Bruno Belchior

Bruno Belchior

Curtidas 0

Respostas

Biohazard

Biohazard

13/05/2005

tenta atualizar o form em vez de só o TreeView, em vez de:
TreeView.Repaint
faça:
Form1.Repaint


GOSTEI 0
Macario

Macario

13/05/2005

Olá programador

Use conforme o destacado abaixo, espero que lhe ajude.


begin 
  if TrVwControles.Selected.ImageIndex < 2 then 
  begin 
    if TrVwControles.Selected.ImageIndex = 0 then 
      TrVwControles.Selected.ImageIndex := 1 
    else 
     TrVwControles.Selected.ImageIndex := 0; 
  end; 
[color=red][b]  TrVwControles.Invalidate;[/b][/color]
end; 



GOSTEI 0
Macario

Macario

13/05/2005

Corrigindo

begin
if TrVwControles.Selected.ImageIndex < 2 then
begin
if TrVwControles.Selected.ImageIndex = 0 then
TrVwControles.Selected.ImageIndex := 1
else
TrVwControles.Selected.ImageIndex := 0;
end;
[b:d3030136ae][color=red:d3030136ae]TrVwControles.Invalidate;[/color:d3030136ae][/b:d3030136ae]
end;


GOSTEI 0
POSTAR