0
Я хочу добавить JButton в таблицу. Я использую таблицу для отображения записей базы данных. На самом деле я хочу добавить кнопку для каждой записи в таблице, но кнопка не отображается в таблице. Он не показывает никаких ошибок. Пожалуйста помоги. Заранее спасибо.Добавление компонента в JTable
package addPanel;
import java.sql.*;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
public class panelShowData extends JPanel
{
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
String url = "jdbc:mysql://localhost:3306/records";
String driver = "com.mysql.jdbc.Driver";
String userName = "root";
String password = "";
JScrollPane scrollPane;
JTable table;
DefaultTableModel tableModel;
String nameSearch="";
public panelShowData()
{
this.setLayout(null);
setVisible(true);
setBounds(0, 200, 500, 450);
}
public void searchData(String nameSearch)
{
tableModel = new DefaultTableModel();
try
{
Class.forName(driver).newInstance();
connection = DriverManager.getConnection(url, userName, password);
statement = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
resultSet = statement.executeQuery("select * from registration where firstname='"
+ nameSearch
+ "'or lastname ='"
+ nameSearch + "'");
System.out.println("Query executed");
System.out.println("nameSearch="+nameSearch);
String firstName;
String lastName;
int id;
JButton add=new JButton("ADD");
while (resultSet.next())
{
System.out.print(resultSet.getString(2) + "\t");
System.out.print(resultSet.getString(4) + "\n");
firstName = resultSet.getString(2);
lastName = resultSet.getString(4);
id = resultSet.getInt(1);
String[ ] columnName = { "Id","First Name", "Last Name","click" };
Object[ ] data = { id, ""+firstName, "" + lastName, add };
System.out.println("Names is:"+firstName);
tableModel.setColumnIdentifiers(columnName);
tableModel.addRow(data);
tableModel.fireTableDataChanged();
}
table = new JTable(tableModel);
table.setEnabled(false);
scrollPane = new JScrollPane(table);
scrollPane.setBounds(10, 10, 350, 100);
scrollPane.revalidate();
scrollPane.repaint();
add(scrollPane);
connection.close();
}
catch (Exception e)
{
e.printStackTrace();
JOptionPane.showMessageDialog( null, "Record Not Found",
"Sorry", JOptionPane.ERROR_MESSAGE);
}
}
}