Итак, у меня есть AbstractTableModel:
public class ClientTableModel extends AbstractTableModel {
private String[] columns = new String [] {
"UserNames", "Passwords"
};
@Override
public int getRowCount() {
return ServerManager.instance.allClients.size();
}
@Override
public int getColumnCount() {
return columns.length;
}
@Override
public Class<?> getColumnClass(int columnIndex) {
return String.class;
}
@Override
public String getColumnName(int column) {
return columns[column];
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
Object value = "";
Client client = ServerManager.instance.allClients.get(rowIndex);
switch (columnIndex) {
case 0:
value = client.CLIENT_USERNAME;
break;
case 1:
value = client.CLIENT_PASSWORD;
break;
}
return value;
}
}
Когда я обновляю «allClients» новым клиентом, строка JTable с новым клиентом не появляется, пока я не изменю размер JTable.
Мне было интересно, возможно ли для JTable обновить новую строку клиента без необходимости вручную изменять размер окна, чтобы увидеть нового клиента.