Pomijanie parametrów JButton podczas wyświetlania go w JFrame, Java

0

Witam.

mam taki oto prosty kod

import javax.swing.*;

public class Button extends JFrame {
		
	public static void main(String[] args){
		
		JFrame frame = new JFrame("Przyciskory");
		
		frame.setSize(350, 250);
		frame.setLocation(400, 250);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
				
		frame.setVisible(true);
				
		JButton butt = new JButton("Button 1");
		butt.setSize(120, 20);
		butt.setLocation(70, 50);
		frame.getContentPane().add(butt);
		
		JButton butt2 = new JButton("Button 2");
		butt2.setSize(80, 20);
		butt2.setLocation(10, 0);
		frame.getContentPane().add(butt2);
	
	}
}

Wynik tego kodu trochę mnie zaskoczył - można go zobaczyć w załączniku.
Zabawny jest fakt iż przycisk "butt" na samym początku także rozciągał się na całą ramkę - dopiero po dodaniu przycisku "butt2" zaczął wygądać poprawnie.
Czasem (bardzo rzadko) Java dostaje olśnienia i portafi prawidłowo wyświetlić przyciski.

Pytania:
Czemu tak się dzieje ? Jak temu zaradzić?

0

Bo dodajesz butt'y do frame'a a nie do panela ? I masz button jako panel.

getContentPane().add(JakiśtamPanel);
JakiśtamPanel.add(butt); 

Wtedy działa normalnie.

1

@szypxx, niewłaściwa diagnoza.
@autor, albo korzystasz z menadżera, albo rozmieszczasz komponenty ręcznie. Ty masz jedno i drugie równocześnie. Wyłącz menadżera rozkładu:

frame.setLayout(null);
0

bo ma rację całkowitą :)
podziałało.

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