I am trying to add row dynamically into JTable but i also want ot Jbutton but it is throwing error. Please help me out
======================JAVA CODE ===============
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.JFrame;
import javax.swing.JTable;
import javax.swing.table.*;
public class TableTest extends JFrame implements ActionListener
{
JButton btnAdd;
BorderLayout layout;
DefaultTableModel model;
JTable table;
public static void main(
String[] args)
{
TableTest app = new TableTest();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public TableTest()
{
super("Table Example");
layout = new BorderLayout();
Container container = getContentPane();
container.setLayout(layout);
btnAdd = new JButton("Add");
btnAdd.addActionListener(this);
model = new DefaultTableModel()
{
public Class getColumnClass(int col)
{
switch (col)
{
case 1 :
return Boolean.class;
default :
return Object.class;
}
}
};
table = new JTable(model);
// Create a couple of columns
model.addColumn("Col1");
model.addColumn("Col2");
JButton but = new JButton("Select Desk");
// Buttons
//table.setValueAt( but, 0, 0 );
// Append a row
model.addRow(new Object[] { "v1", new Button("Submit")});
model.addRow(new Object[] { "v3", new Boolean(false)});
JScrollPane scrollPane = new JScrollPane(table);
container.add(btnAdd, BorderLayout.NORTH);
container.add(scrollPane, BorderLayout.CENTER);
setSize(300, 200);
setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == btnAdd)
{
model.addRow(new Object[] { "Karl", new Boolean(true)});
}
}
}