Ostatni panel w oknie ucieka na początek strony.

Ostatni panel w oknie ucieka na początek strony.
WO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

Cześć.

Jak w temacie. Ostatni ostatni dodany panel ucieka na początek strony, mimo że używam opcji setBounds. Jest to o tyle dziwne, że jak usunę ostatni panel, to wtedy ucieka aktualnie ostatni (poprzednio przedostatni). Czy ktoś wie, z czego to może wynikać.
Sprawdziłem i zawsze znika ten na końcu dodany, a nie o największej współrzędnej y.

Niby znalazłem rozwiązanie, tj. dodanie na koniec pustego panelu, ale chciałbym znaleźć bardziej profesjonalną metodę.
screenshot-20200218204845.png

Azarien
  • Rejestracja: dni
  • Ostatnio: dni
1

A robisz tam jakiś setLayout? bo może to ci psuje - jeśli się upierasz na własne pozycjonowanie kontrolek to walczysz z layoutem.

WO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

Wygląda na to, że nie. Poniżej fragment kodu, być może któraś z użytych formuł działa jak setLayout,a ja nie wiem o tym. W pozostałem kodzie co najwyżej są tworzone obiekty i dodawane do paneli, więc tam nie ma szans na nic takiego

public class KompilatorJednostek extends JFrame
{

public KompilatorJednostek()
{
	this.setTitle("Kompilator jednostek");
	this.setBounds(300, 100, 640, 480);
	initComponents();
	this.setDefaultCloseOperation(3);
}

public static void main(String[] args) 
{
	new KompilatorJednostek().setVisible(true);	
}

public void initComponents()
{
	this.getContentPane().add(panel).setBounds(120, 30, 400, 50);
	this.getContentPane().add(panel1).setBounds(120, 90, 400, 50);
	this.getContentPane().add(panel2).setBounds(120, 150, 400, 50);
	this.getContentPane().add(panel3).setBounds(120, 210, 400, 50);
}.
ST
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
1

Dodaj do KompilatorJednostek()

this.getContentPane().setLayout(null);

WO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

Ekstra, działa

Dzięki

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.