Setting Grid Line in JTable

In the earlier section you have learnt for creating a
simple JTable that contains predefined grid line with black color. But in
this Java programming tutorial, you will learn how to set the colored grid line
in JTable component. The grid line is a line that separates the cells
by drawing the boundary around the cell and looks clearly. This can be
removed too from the JTable. This line helps you in understanding the data
of JTable. You can use the grid line according to the user's requirement.
Description of program:
In this program, you will learn how to set the grid
line in JTable. For setting the grid line, you will need a JTable. So,
first of all this program creates a JTable including the data and columns. All
the columns have their column headers and yellow background color. Now you have
to add or remove the grid line in JTable. If you want to add the colored grid
line in JTable, you must have to set the grid property using the setShowGrid()
method by defining 'true' value. And if, you want to remove the grid line, you
will have to set the grid property by defining 'false' value in the setShowGrid()
method. Thus for setting the grid color, you will have to use the setGridColor()
method.
Description of code:
setShowGrid(boolean bol):
This method takes Boolean type values either true or false. If you define
the 'true' value, the grid line will add in the JTable otherwise not.
setGridColor(Color col):
This method sets the color of grid line in JTable. It takes color type
value, which have to be add in grid line of JTable.
setShowVerticalLines():
This method draws the vertical line between the cells. It takes Boolean type
value either 'true' or
'false'.
Here is the code of program:
import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
public class GridLine{
JTable table;
public static void main(String[] args) {
new GridLine();
}
public GridLine(){
JFrame frame = new JFrame("Grid Line in JTable Component!");
JPanel panel = new JPanel();
String data[][] = {{"Vinod","Computer","3"},
{"Rahul","History","2"},
{"Manoj","Biology","4"},
{"Sanjay","PSD","5"}};
String col [] = {"Name","Course","Year"};
DefaultTableModel model = new DefaultTableModel(data,col);
table = new JTable(model);
//Setting the grid line
table.setShowGrid(true);
//Removing the grid line from the table
// table.setShowGrid(false);
//Show vertical grid lines
table.setShowVerticalLines(true);
//setting grid color
table.setGridColor(Color.red);
JTableHeader header = table.getTableHeader();
header.setBackground(Color.yellow);
JScrollPane pane = new JScrollPane(table);
panel.add(pane);
frame.add(panel);
frame.setSize(500,150);
frame.setUndecorated(true);
frame.getRootPane().setWindowDecorationStyle(JRootPane.PLAIN_DIALOG);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
|
Download this example.
Output of program:
Only Vertical Grid:
Both Grids (Horizontal and vertical):

|
Current Comments
1 comments so far (post your own) View All Comments Latest 10 Comments:Can you make buttons inside the table like for a minesweeper game or somthing similiar?
Posted by JP on Thursday, 08.7.08 @ 02:09am | #71423