我目前正在尝试使用来自互联网的ButtonColumn
在Java中做一些事情,这允许我在JTable
单元格内创建可点击按钮。但我需要制作多个按钮,并为每个按钮指定它自己的动作参数。所以我有这个代码:
DefaultTableModel dtm = (DefaultTableModel) jTable1.getModel();
dtm.setNumRows(uziv.size());
int riadok = 0;
for (int i = 0; i < uziv.size(); i++) {
jTable1.setValueAt(uziv.get(i).getMeno(), riadok, 0);
jTable1.setValueAt(uziv.get(i).getPriezvisko(), riadok, 1);
jTable1.setValueAt(uziv.get(i).getEmail(), riadok, 2);
jTable1.setValueAt(uziv.get(i).getLogin(), riadok, 3);
int idUz = uziv.get(i).getId();
Action ban = new AbstractAction() {
public void actionPerformed(ActionEvent e) {
DefaultTableModel dtm = (DefaultTableModel) jTable1.getModel();
int modelRow = Integer.valueOf(e.getActionCommand());
db.zabanujUzivatela(db.selectId(idUz));
}
};
ButtonColumn col = new ButtonColumn(jTable1, ban, 4);
riadok++;
}
但问题是我的idUziv
甚至在for cyclus期间发生了变化,最后当我运行我的程序并点击任何按钮时,所有按钮都指向同一个{{1}当他们的行动被执行时。我真的没有想法我怎么能做到这一点。我需要让它像第一个按钮点击指向idUziv
,值为1,例如,第二个值为2,依此类推......你知道如何识别吗?或者甚至可能吗?
非常感谢您的每一个答案