Changing the Name of Column in a JTable

In this section, you will learn how to change the name
of column in JTable component. You have learnt the JTable
containing some data and column with column headers. Sometime, if you want
to change the name of column, you must have to change the column header. For
changing the name of column, you will need the index of column. Here, you will
learn how to change the name in the name of column in a JTable in this
following example.
Description of program:
This program helps you to change the name of column in JTable.
For changing the name, you will need a table and column index that have to be
changed.. Here the ChangeName method is applied to change the name of
column in JTable that uses the getColumnModel, getColumn
and setHeaderValue methods. After this you will get the changes
column name [Name - Stu_name, Subject - Paper]. As look like the given output.
Description of code:
setHeaderValue(Object col_name):
This is the method that sets the object (column name) to use as headerRenderer.
It takes an object parameter that is the name of column in string format.
Here is the code of program:
import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
public class ChangeColumnName{
JTable table;
public static void main(String arg[]){
new ChangeColumnName();
}
public ChangeColumnName(){
JFrame frame = new JFrame("Changing Column Name!");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
String data[][] = {{"Vinod","MCA","Computer"},
{"Deepak","PGDCA","History"},
{"Ranjan","M.SC.","Biology"},
{"Radha","BCA","Computer"}};
String col[] = {"Name","Course","Subject"};
DefaultTableModel model = new DefaultTableModel(data,col);
table = new JTable(model);
ChangeName(table,0,"Stu_name");
ChangeName(table,2,"Paper");
JTableHeader header = table.getTableHeader();
header.setBackground(Color.yellow);
JScrollPane pane = new JScrollPane(table);
panel.add(pane);
frame.add(panel);
frame.setUndecorated(true);
frame.getRootPane().setWindowDecorationStyle(JRootPane.PLAIN_DIALOG);
frame.setSize(500,150);
frame.setVisible(true);
}
public void ChangeName(JTable table, int col_index, String col_name){
table.getColumnModel().getColumn(col_index).setHeaderValue(col_name);
}
}
|
Download this example.
Output of program:
Before changing the name of column:
After changing the name of column:

|
Current Comments
0 comments so far (post your own) View All Comments Latest 10 Comments: