Problema de Stack Overflow! Como resolver????

15/03/2006

0

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

Responder

Posts

15/03/2006

Siam

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


Responder

15/03/2006

Eniorm

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


Responder

15/03/2006

Siam

A chamada à Reposiciona está dentro de algum evento ?


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar