Quote Originariamente inviata da jabjoint Visualizza il messaggio
Quindi pensavo di leggere l'albero gerarchico dei componenti in ordine inverso e calcolando il ramo più lungo con più livelli.
La profondità massima l'ho già calcolata.
Non rendere le cose più complicate del necessario .... Mai sentito di dover calcolare il ramo più "lungo" di un albero per fare una GUI ...

Dovresti anche precisare (non l'hai fatto qui, né mi pare nelle altre discussioni aperte di recente) COME hai rappresentato la gerarchia dei componenti. XML? JSON? Un file di testo con tua struttura fatta-in-casa? Un DSL? Una base dati? Altro?

Quote Originariamente inviata da jabjoint Visualizza il messaggio
La creazione deve partire dal componente più profondo e risalire verso il primo livello.
, no, cioè non è detto. In Swing non c'è la necessità obbligatoria di creare i componenti "padre" prima dei componenti "figli", né il contrario. In altri framework GUI invece è diverso. Ad esempio in SWT (il framework GUI fatto dalla Eclipse Foundation e usato anche da Eclipse), ogni componente deve ricevere nel costruttore il componente "padre". In SWT, Button e Label hanno i costruttori:

public Button(Composite parent, int style)
public Label(Composite parent, int style)

Lì infatti è obbligatorio creare prima il parent. Ma in Swing no.

Quote Originariamente inviata da jabjoint Visualizza il messaggio
Voi che dite?
Che se chiarisci una volta per tutte come hai rappresentato la gerarchia, è meglio.