Home Java Example Java Swing Enabling Row, Column and Cell Selections in a JTable



Enabling Row, Column and Cell Selections in a JTable
Posted on: April 14, 2007 at 12:00 AM
In this section, we are going to describe how to enable the row, column and cell selections in a JTable component.

Enabling Row, Column and Cell Selections in a JTable

     

In this section, we are going to describe how to enable the row, column and cell selections in a JTable component. But, what is the term 'enable'?

Enable: Enable means to activate, here you will see the enabling row, column and cell selections in a JTable. When you select any cell of a JTable, the entire row is selected that means enabling row property is true. For selecting the entire column, enable the property of column property as 'true' and for selecting only one cell, the property of both must be 'true'.

Description of program:

First of all, this program creates a table containing the data and column with column header. After that set the property of  this table 'enable' or 'disable'. The JTable provides by default enable property to the row, if you select any cell of a table, the entire row will be selected. But if you want to set the enable property of column, you will have to set the property of column as 'true' using the setColumnSelectionAllowed() method. If you want to select only one cell you have to enable both row and column as 'true' through using setRowSelectionAllowed() and setColumnSelectionAllowed() method.

Description of code:

setColumnSelectionAllowed():
This method takes Boolean type values either 'true' or 'false'. If you set the 'true', this method permits you for selecting the column otherwise not.

setRowSelectionAllowed():
This also takes Boolean type values either 'true' or 'false'. If you set the 'true', the row selection is permitted otherwise not.

Here is the code of program:

import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;

public class EnableRowColumnAndCell{
  JTable table;
  public static void main(String[] args) {
  new EnableRowColumnAndCell();
  }
  public EnableRowColumnAndCell(){
  JFrame frame = new JFrame("Enabling row, column and cell in JTable!");
  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);
  table.setColumnSelectionAllowed(true);
//  table.setRowSelectionAllowed(true);
  table.setRowSelectionAllowed(false);
  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:

Row Selection:

Column Selection:

Cell Selection:

Related Tags for Enabling Row, Column and Cell Selections in a JTable:
javacswingcomtableselectiocomponentspropertycolumnjtablecomponentselectioncelltabrowexamplectetoexamjtaselectedeilenablelipeceinmnttrjactivateestruememeanproumnxawhenxampseecolatanyisirhallivmplpropereaandactrtropevatwingvassthswavabablhatelectionlumpleplpropprndonomolo


More Tutorials from this section

Ask Questions?    Discuss: Enabling Row, Column and Cell Selections in a JTable   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 

Ask Questions?

If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.

Ask your questions, our development team will try to give answers to your questions.