Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to change JTable Background Color default to white?

I have a JTable that I am displaying in a JScrollpane. The JTable only displays a few rows of information in its grid. The space below the grid to the bottom of the JPanel, that contains the JScrollpane, (Which in turn contains the JTable) is colored solid gray. I'd like to change that color to white. I tried setting the JTable's background color to white, [using the method setBackground(Color,WHITE) ] but that didn't work.

Can anyone tell me which method to use to change that gray to white?

like image 689
manav Avatar asked Sep 21 '12 10:09

manav


2 Answers

depend of your code

  • JTable#setFillsViewportHeight(true);

or

  • JScrollPane#getViewport().setBackground(JTable#getBackground());

or you can to fits JScrollPanes JViewport to the JTables view by

  • JTable#setPreferredScrollableViewportSize(JTable#getPreferredSize());
like image 176
mKorbel Avatar answered Nov 20 '22 02:11

mKorbel


All you have to do is to get the JViewport of the JScrollPane in your JTable and set its background color.

JTable table=new JTable(model);  
JScrollPane scroll=new JScrollPane(table);  
scroll.getViewport().setBackground(Color.WHITE);

Hope that gives a solution, for making your remaining table space as WHITE.

like image 43
Purnesh Avatar answered Nov 20 '22 03:11

Purnesh