Umiejscowienie obrazka w panelu i Buttonów

0

Witam, na starcie powiem, że przeszukałem już sporą część tematów, a nadal coś nie idzie po mojej myśli, a więc dodałem obrazek w jednym z czterech paneli (górnym), jest on na środku ale przy górnej krawędzi panelu, a chciałbym go umiejscowić w jego centrum. Próbuje to zrobić funkcją setBounds() ale niestety nic sie nie zmienia, i nie wiem gdzie jest błąd. To samo chciałbym wykonać dla trzech buttonów, co prawda udało mi się je ustawić w pionie, ale tylko gdy zmieniłem ich rozmiar tak aby nie mieściły się w jednej lini w środkowym panelu, a chciałbym aby panel środkowy np miał wymiary 200x 600, a przyciski np 80x20. Niestety przy takiej konfiguracji dwa przyciski automatycznie wchodzą w jedną linie. Dodam, że funkcja setBounds() również nie działa.
Niby takie proste, a jednak mam z tym nie lada problem. Proszę o wyrozumiałość, bo siedzę w Javie niespełna kilka tyg. Pozdrawiam i dzięki z góry.

package xxx;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Okno extends JFrame
{
	private JPanel panelGóra, panelDół, panelLewy, panelPrawy;
	private JButton Przycisk_start, Przycisk_poziom_trudności, Przycisk_wyjście;
	private JLabel Obrazek;
    
	public Okno()
	{
		
		setTitle("SNAKE");
		setSize(800,600);
		setLayout(null);
		//setLayout(new BorderLayout());
	    
	    panelGóra = new JPanel();
	    panelGóra.setBounds(0,0,800,200);
	    add(panelGóra);
	    
	    panelLewy = new JPanel();
	    panelLewy.setBounds(0,200,300,400);
	    add(panelLewy);
	    
	    panelPrawy = new JPanel();
	    panelPrawy.setBounds(500,200,300,400);
	    add(panelPrawy);
	    
	    panelDół = new JPanel();
	    panelDół.setBounds(300,200,200,400);
	    add(panelDół);
	    
	    
	    JLabel Obrazek = new JLabel();
	    Obrazek.setIcon(new ImageIcon(getClass().getResource("snake.jpg")));
	    Obrazek.setBounds(250,50,300,100);
	    
	   
		JButton Przycisk_Start = new JButton("Start");
		Przycisk_Start.setPreferredSize(new Dimension (150,40));
	    
		JButton Przycisk_poziom_trudności = new JButton("Poziom");
		Przycisk_poziom_trudności.setPreferredSize(new Dimension (150,40));
		
		JButton Przycisk_wyjście = new JButton("Wyjście");
		Przycisk_wyjście.setPreferredSize(new Dimension (150,40));
	   
		
		
		   
		   
	  
      
	   panelGóra.add(Obrazek);
	   panelDół.add(Przycisk_Start);
	   panelDół.add(Przycisk_poziom_trudności);
	   panelDół.add(Przycisk_wyjście);
	   
	   panelGóra.setBackground(Color.black); 
	   panelLewy.setBackground(Color.green); 
	   panelPrawy.setBackground(Color.green); 
	   panelDół.setBackground(Color.gray);
	   
	  
	}
	
	public static void main(String[] args) 
	{
		 Okno okno = new Okno();
		 okno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		 okno.setVisible(true);
	}

}

1

Spróbuj dla JPaneli także ustawić setLayout(null) , setBounds działa tylko dla elementów bez ustawionego Layout'u.

0

Już rozkminiłem to, ale dzieki za odpowiedź !

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