Problema de Stack Overflow! Como resolver????

Delphi

15/03/2006

Pessoal, vejam o codigo abaixo:


procedure TForm1.Reposiciona(ParentPanel: TWinControl; XPBar: TJvXPbar);
var
  i : integer;
begin
  for i := 0 to ComponentCount -1 do
    if (Components[i].ClassType = TJvXPBar) then
      if (TJvXPBar(Components[i]).Parent = ParentPanel) then 
        TJvXPBar(Components[i]).Collapsed := True;
  XPBar.Collapsed := False;
end;


os menus (JvXPBar) estão dentro de TPanels separados
por categorias (clientes, fornecedores, relatórios, etc)
qdo um menu for clicado, todos os outros deverão ser
fechados (collapsed = true) e somente o indicado como parâmetro
deverá ficar aberto (collapsed = false)

para chamar o procedimento eu uso:

Reposiciona( (Sender as TJvXPBar).Parent, (Sender as TJvXPBar) );


ou

Reposiciona(Panel3, JvXPBar1);
 


esse proc ao ser executado está gerando erro de Stack Overflow, alguém sabe me dizer se tem algo de errado????

bye


Eniorm

Eniorm

Curtidas 0

Respostas

Siam

Siam

15/03/2006

Stack overflow deve estar ocorrendo no número de chamadas à procedure Reposiciona e não dentro dela.


GOSTEI 0
Eniorm

Eniorm

15/03/2006

o problema é q eu só fiz uma chamada e da erro!


GOSTEI 0
Siam

Siam

15/03/2006

A chamada à Reposiciona está dentro de algum evento ?


GOSTEI 0
POSTAR