我有两个表,我需要将table_3中特定单元格的值添加到table_4 ..但它不起作用。有什么帮助吗?
代码:
JTable table_3 = new JTable(TableModel2);
final JTable table_4 = new JTable(TableModel3);
JButton btnAdd = new JButton("add");
btnAdd.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int row = table_3.getSelectedRow();
int column = table_3.getSelectedColumn();
Object selectedPlanet = TableModel2.getValueAt(row, column);
int columnContainingPlanets = 0;
for (int index = columnContainingPlanets; index < TableModel3.getRowCount();index ++){
Object value = TableModel3.getValueAt(index, columnContainingPlanets) ;
if (value == selectedPlanet) {
JOptionPane.showMessageDialog(panel_10,"This item was selected ,Please select another item");
return; }}
TableModel3.addRow(new Object[] { selectedPlanet });
}
});
最佳答案
仍在等待您的Minimal, Complete, and Verifiable Example(MCVE)
。是什么让您认为问题出在发布的代码中?在解决问题之前,每个问题都应有一个简单的示例来演示该问题,这证明您已尝试简化问题以更好地对其进行调试。
在不指示导致问题的代码行的情况下发布错误消息的目的是什么?再次发布MCVE
的另一个原因。在回答问题之前,您不知道需要什么信息来解决问题。
没有所有信息,我们只能做猜测。
作为论坛的新手,您会猜到一个。以后的问题将需要一个MCVE
我的猜测是“ tableModel3”没有任何列,因此您不能向包含单列数据的模型添加一行。
因此,应使用类似以下代码的方式创建模型:
String[] columnNames = { "Planets" };
DefaultTableModel tableModel3 = new DefaultTableMNodel(columnNames, 0);