Java JTable单击选择所选单元格的整行,双击编辑行
我有一个项目,其中我有一个JTable,并且:Java JTable单击选择所选单元格的整行,双击编辑行,java,swing,jtable,Java,Swing,Jtable,我有一个项目,其中我有一个JTable,并且: 单击一行时,必须从jtable中选择整行,而不仅仅是单击的单元格 双击单元格时,该行必须是可编辑的 如果相关的话,我使用Netbeans IDE JTable代码: public class ModelTabelAbonati extends AbstractTableModel { Abonat[] tabelAbonati = new Abonat[0]; public void Adauga (String nume, String
- 单击一行时,必须从jtable中选择整行,而不仅仅是单击的单元格
- 双击单元格时,该行必须是可编辑的
public class ModelTabelAbonati extends AbstractTableModel {
Abonat[] tabelAbonati = new Abonat[0];
public void Adauga (String nume, String prenume, String cnp, Integer telefon){
tabelAbonati= Arrays.copyOf(tabelAbonati, tabelAbonati.length+1);
tabelAbonati[tabelAbonati.length-1]=new Abonat (nume,prenume, cnp, telefon);
fireTableRowsInserted(tabelAbonati.length-1, tabelAbonati.length-1);
}
public void Adauga(String nume, String prenume, String cnp, int telefon){
tabelAbonati= Arrays.copyOf(tabelAbonati, tabelAbonati.length+1);
tabelAbonati[tabelAbonati.length-1]=new Abonat (nume,prenume, cnp, telefon);
fireTableRowsInserted(tabelAbonati.length-1, tabelAbonati.length-1);
}
@Override
public String getColumnName(int column){
return new String[]{"Nr. ","Nume ","Prenume ","CNP ","Tel. Fix ","Tel. Mobil"}[column];
}
@Override
public int getRowCount() {
return tabelAbonati.length;
}
@Override
public int getColumnCount() {
return 6;
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
Abonat a= tabelAbonati[rowIndex];
switch (columnIndex){
case 0: return rowIndex+1;
case 1: return a.getNume();
case 2: return a.getPrenume();
case 3: return a.getCnp();
case 4: return a.getTelefon().getTelFix();
case 5: return a.getTelefon().getTelMobil();
default: return "ERROR";
}
}
}
将此代码添加到ModelTabelAbonati以允许编辑单元格:
public boolean isCellEditable(int rowIndex, int columnIndex) {
return true;
}
在
table=new Jtable()下添加此表格。setRowSelectionAllowed(true)
。如果您在完成工作时遇到任何问题,请告诉我们。1)“双击一行,该行必须是可编辑的”听起来令人困惑。。。你的意思是划船还是牢房?2) “单击行时,必须从jtabel中选择整行,而不仅仅是单击的行”您是否尝试了表。SetRowSelectionLowed(true)
?3) 为了获得更好的帮助,请尽快发布“对不起,我的坏”,单击单元格时必须从该单元格的jtabel中选择整行(所有行必须为蓝色)。我尝试了table.setRowSelectionAllowed(true)。它可以工作,但不选择整行(变成蓝色),它只选择单元格