View Full Version : [JAVA] Cambiare dimensione jframe
serpico84
01-07-2009, 17:26
Ho un menu il quale quando premo un bottone vorrei che comparisse. Questo menu è nello stesso frame del bottone e in pratica voglio allargare la dimensione del frame. Per ora l'unica soluzione che ho trovato è questa ma credo che ce ne siano migliori. All'evento del bottone ho messo:
if (this.getWidth()==377){ for (int i=377;i<=656;i=i+8){
setSize(i, 813);
}}
In pratica quando la dimensione è quella di default (cioè ho il menu nascosto) allargo la finestra fino alla dimensione che mi permette di vedere il menu nascosto...l'effetto non è dei migliori, esiste di meglio???
non puoi farlo già più grande e quando è il momento lo rendi solo visibile?
component.setVisible(true);
serpico84
01-07-2009, 17:30
non è un componente esterno al frame è nello stesso frame
il setVisible è ok anche per i componenti interni. I componenti non visibili non partecipano alla distribuzione dello spazio quindi se insersci un pannello invisibile e poi lo rendi visibile - riconvalidando il layout del contenitore - capita quel che deve capitare.
Piuttosto il for mi fa pensare al fatto che tu voglia realizzare una transizione vale a dire il componente non appare all'improvviso ma un po' alla volta. In questo caso puoi usare un JSplitPane, disabilitare il controllo utente e animare la posizione del separatore. Il risultato è un pannello a tendina.
serpico84
02-07-2009, 09:46
Piuttosto il for mi fa pensare al fatto che tu voglia realizzare una transizione vale a dire il componente non appare all'improvviso ma un po' alla volta. In questo caso puoi usare un JSplitPane, disabilitare il controllo utente e animare la posizione del separatore. Il risultato è un pannello a tendina.
Si è proprio quello il discorso, infatti mi sono spiegato male...voglio che il frame si allarghi un po alla volta. Ora provo come dici te.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.