【发布时间】:2013-06-22 19:36:33
【问题描述】:
我尝试了将近 2 个小时来弄清楚如何从 JTable 中删除和更新 1 行,但不知何故它不起作用。 我使用以下代码:
DefaultTableModel modelTable = (DefaultTableModel) jTabelRooster.getModel();
modelTable.addRow(new Object[]{lid.getLidnummer().toString(), lid.getLidvoornaam(), lid.getLidtussenvoegsel(),lid.getLidachternaam(), lid.getAanwezig()});
好的,到目前为止一切都很好..很好地添加了行..但现在我想删除它们:
int SelectedRow = jTabelRooster.getSelectedRow();
modelTable.removeRow(SelectedRow);
当我这样做时,我收到以下错误: 线程“AWT-EventQueue-0”中的异常 java.lang.ArrayIndexOutOfBoundsException: 2 >= 2
您的帮助将不胜感激
编辑: jTabelRooster 已被 gui 布局管理器插入 所以我现在有了这段代码,但我没有获得太多成功:
private void initRoosterDetail()
{
for(int i = 0; i < leden.size(); i++)
{
lid = leden.get(i);
modelTable.addRow(new Object[]{lid.getLidnummer().toString(), lid.getLidvoornaam(), lid.getLidtussenvoegsel(),lid.getLidachternaam(), lid.getAanwezig()});
}
}
private void jbInschrijvingVerwijderenActionPerformed(java.awt.event.ActionEvent evt) {
int SelectedRow = jTabelRooster.getSelectedRow();
modelTable.removeRow(jTabelRooster.convertRowIndexToModel(SelectedRow));
}
一定是这个:)
当我在表格中选择 1 行并按下取消按钮时.. 我收到此消息:
线程“AWT-EventQueue-0”中的异常 java.lang.ArrayIndexOutOfBoundsException: 2 >= 2
============================================== ==================================================== ==================================================== ==================================================== ==================================================== ==================================================== ===================================
感谢大家的帮助...我知道我做错了什么...这与我使用的 tableModelListener 有关..所以这给我留下了另一个问题:)
jTabelRooster.getModel().addTableModelListener(
new TableModelListener()
{
public void tableChanged(TableModelEvent evt)
{
if(jTabelRooster.getSelectedColumn() == 4)
{
}
}
});
这段代码弄乱了 deleterow 命令。
我有 1 个带有复选框的布尔列 :(
【问题讨论】:
-
在此处快速获得体面答案的建议:创建并发布一个非常小的可编译、可运行的示例程序,我们可以不加改动地运行该示例程序来演示您的问题,sscce。
-
正如@HovercraftFullOfEels 所建议的那样发布SSCCE或至少发布您代码的相关方法,这样我们就不必费力地猜测错误的原因......我的快速问题..显示您创建
modelTable对象的方法 -
@user2445977:请不要在 cmets 中发布代码,因为它会丢失所有格式并变得不可读。而是使用新代码编辑您的问题。关于sscce,您越早发布它,您就越早得到正确答案。还可以考虑在本网站上回复您的其他问题。我们是志愿者,想知道您花时间阅读我们的贡献以及它是否有帮助。您的回复将有助于激励其他人为您提供更多帮助。
-
好的..非常感谢您的支持..我现在添加一些额外的代码
-
请添加异常的堆栈跟踪
标签: java swing jtable defaulttablemodel