Problem z nagłówkami tabeli

0

Nie rozumie jak zrobić, żeby nagłówki tabeli były widoczne przeczytałem w necie, że wystarczy zastosować JScrollPane ale chyba nie wiem jak oto mój kod:

import java.awt.Color;
import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;


public class OknoKlienta extends JFrame{

	JButton szukaj=new JButton("Szukaj");
	JButton zakup=new JButton("Zakup");
	JButton pokaz=new JButton("Pokaz produkty");
	
	String[] kolumny={"ID","Nazwa","Ilosc"};
	Object[][] dane = {
			{"1","Jablko",new Integer(4)},
			{"2","Gruszka",new Integer(6)},
	};
	JTable tabela=new JTable(dane,kolumny);
	JScrollPane suwak = new JScrollPane(tabela);
	
	public OknoKlienta(){
		
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		setSize(600,600);
		setTitle("Okno klienta");
		setLayout(null);
		setVisible(true);
		
		
		
		pokaz.setSize(130,30);
		pokaz.setLocation(30, 50);
		pokaz.setVisible(true);
		
		szukaj.setSize(130, 30);
		szukaj.setLocation(30, 100);
		szukaj.setVisible(true);
		
		zakup.setSize(130,30);
		zakup.setLocation(30, 150);
		zakup.setVisible(true);
		
		tabela.setSize(300, 450);
		tabela.setLocation(200, 50);
		tabela.setBackground(new Color(0,252,255));
		tabela.setVisible(true);
		
		add(pokaz);
		add(szukaj);
		add(zakup);
		add(tabela);
		add(suwak);
	
	}

}


 
0

Jak dodajesz do okna JScrollPane, to nie dodajesz jego zawartości

                pokaz.setSize(130,30);
                pokaz.setLocation(30, 50);

                szukaj.setSize(130, 30);
                szukaj.setLocation(30, 100);

                zakup.setSize(130,30);
                zakup.setLocation(30, 150);

                suwak.setSize(300, 450);
                suwak.setLocation(200, 50);
                tabela.setBackground(new Color(0,252,255));

                add(pokaz);
                add(szukaj);
                add(zakup);
                add(suwak);
0

Pewnie uznasz mnie za tempaka ale dalej nie bardzo rozumie o co chodzi zrobiłem tak:

 import java.awt.Color;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;


public class OknoKlienta extends JFrame{

	public JButton szukaj=new JButton("Szukaj");
	public JButton zakup=new JButton("Zakup");
	public JButton pokaz=new JButton("Pokaz produkty");
	
	public String[] kolumny={"ID","Nazwa","Ilosc"};
	public Object[][] dane = {
			{"1","Jablko",new Integer(4)},
			{"2","Gruszka",new Integer(6)},
	};
	public JTable tabela=new JTable(dane,kolumny);
	public JScrollPane suwak = new JScrollPane(tabela);
	
	
	public OknoKlienta(){
		
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		setSize(600,600);
		setTitle("Okno klienta");
		setLayout(null);
		setVisible(true);
		
		
		
		pokaz.setSize(130,30);
		pokaz.setLocation(30, 50);
		//pokaz.setVisible(true);
		
		szukaj.setSize(130, 30);
		szukaj.setLocation(30, 100);
		//szukaj.setVisible(true);
		
		zakup.setSize(130,30);
		zakup.setLocation(30, 150);
		//zakup.setVisible(true);
		
		tabela.setSize(300, 450);
		tabela.setLocation(200, 50);
		tabela.setBackground(new Color(0,252,255));

		//tabela.setVisible(true);
		
		add(pokaz);
		add(szukaj);
		add(zakup);
		//add(tabela);
		add(suwak);
	
	}
0

Znajdź różnice (podpowiedź, są dwie):

// mój kod
                suwak.setSize(300, 450);
                suwak.setLocation(200, 50);
//twój kod                
                tabela.setSize(300, 450);
                tabela.setLocation(200, 50);    
0

Bardzo dziękuje, za pomoc działa w końcu ktoś mi to wyjaśnił. Dzięki wielkie.

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