Kolejnosc metod dla JFrame

0

Jaka jest poprawna kolejnosc uzywania ponizszych metod przy zmianie paneli tak zeby ramka rozciagnela sie na tyle ile potrzeba dla komponentów ?

getContentPane().remove(Panel1);
getContentPane().add(Panel2);
pack();
validate();
repaint();
0

Dobra kolejność.
Masz świadomość, że taki kod może przewrócić wygląd okna do góry nogami? On zmienia kolejność dodawania paneli. (pack() jest chyba zbyteczne).

0

Wiem co ten kod robi nie wiem tylko co dokladnie robi

validate(); 

i gdzie najlepiej wstawić

pack(); 

Czy np

 
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					GlownaRamka frame = new GlownaRamka();
					frame.pack();
					frame.setVisible(true);
					
				    }
				 catch (Exception e) 
				{
					e.printStackTrace();
				}


to jest dobre miejsce dla

pack(); 
0

pack powinno być po dodaniu wszystkich komponentów, a przed ewentualnym centrowaniem okna

setLocationRelativeTo(null);
setVisible(true(); 
0

Czy

 repaint()

to jest to samo co GlownaRamka frame = new GlownaRamka();

Mozna tak to rozumiec że ta metoda tworzy na nowo ramke ?
0

Wtf? repaint() odrysowuje istniejącą ramkę,

new GlownaRamka();

tworzy nową.

0

Chce po prostu dokładnie ogarnąć dlaczego po zmianie paneli wstawiamy

 
validate();
repaint();
0

W uproszczeniu, trzeba ustalić rozmiar okna z nowymi komponentami i zmienione okno narysować.

1 użytkowników online, w tym zalogowanych: 0, gości: 1