Pessoal estou com uma duvida/problema, tenho q desenvolver uma funcao q faca o seguinte:
tenho dois ArrayList (componentesTela e componentesTelaArrumados)
imagina q no compeonentesTela eu tenho todos os componentes de uma tela(painel, jlabel, edit, botao, jtoolbar, scrollpane, etc etc)
eu tenho que fazer o seguinte: aninhar todos os componetes com os seus pais e filhos… por exemplo: o botao 1 esta dentro do painel 1, o botao 2 esta no frame(raiz) o botao 3 esta dentro do painel 3 q esta dentro do painel 2 e assim sucessivamente…
eu tinha pensado em fazer o seguinte: correr todo o componentesTela, e pegar primeiramente os que sao raiz(removendo eles do componenteTela) depois um for nos que sobraram, eu recupero o container deles e jogo logo abaixo dele no componentesTelaArrumados, e como existe componente dentro de componente dentro de componente eu teria q no final fazer um GOTO tipo if(componenteTela.size() > 0){ volta para o inicio da minha funcao. }
porem ouvi falar qn ao e uma boa pratica fazer isso… alguem sabe como eu posso resolver isso?? eu ja tentei fazer uma funcao q arrumava os componentes internos porem como eu chamava ela dentro dela mesmo… deu erro…
abracos
[quote=fabioebner]Pessoal estou com uma duvida/problema, tenho q desenvolver uma funcao q faca o seguinte:
tenho dois ArrayList (componentesTela e componentesTelaArrumados)
imagina q no compeonentesTela eu tenho todos os componentes de uma tela(painel, jlabel, edit, botao, jtoolbar, scrollpane, etc etc)
eu tenho que fazer o seguinte: aninhar todos os componetes com os seus pais e filhos… por exemplo: o botao 1 esta dentro do painel 1, o botao 2 esta no frame(raiz) o botao 3 esta dentro do painel 3 q esta dentro do painel 2 e assim sucessivamente…
eu tinha pensado em fazer o seguinte: correr todo o componentesTela, e pegar primeiramente os que sao raiz(removendo eles do componenteTela) depois um for nos que sobraram, eu recupero o container deles e jogo logo abaixo dele no componentesTelaArrumados, e como existe componente dentro de componente dentro de componente eu teria q no final fazer um GOTO tipo if(componenteTela.size() > 0){ volta para o inicio da minha funcao. }
porem ouvi falar qn ao e uma boa pratica fazer isso… alguem sabe como eu posso resolver isso?? eu ja tentei fazer uma funcao q arrumava os componentes internos porem como eu chamava ela dentro dela mesmo… deu erro…
abracos[/quote]
goto para trás? tenta um do-while
do {
...
} while (componenteTela.size() == 0);
entao cara eu tinha tentando fazer assim mas deu errado… vou tentar novamente. perae. tinha feito um while ao inves de um do… while