java - 为什么我的 JTable 上的数据只有在我选择后才可见?
问题描述
我有一个 JTable,其中包含一些来自 String 的数据,但是当我运行我的程序时,JTable 似乎是空的,直到我选择了行。然后,它显示了一切。怎么会这样?
运行程序后:
在我选择表中的数据后:
我的 JTable 周围的代码是:
public class PanelConsulta1 extends JPanel {
private String[] nombresColumnas = {"Ciudad de Residencia", "Salario Promedio"};
private JScrollPane scrollPane;
private JTable tabla;
private controlador control;
public PanelConsulta1(){
control = new controlador();
setSize(400, 400);
setLayout(null);
tabla = new JTable(inicializarTabla());
scrollPane = new JScrollPane();
scrollPane.add(tabla);
scrollPane.setSize(400, 400);
tabla.setFillsViewportHeight(true);
tabla.setSize(400, 400);
add(scrollPane);
setVisible(true);
}
private DefaultTableModel inicializarTabla(){
ArrayList<Consulta1Vo> lista = null;
Object[][] ayudante = null;
DefaultTableModel modelo = new DefaultTableModel(nombresColumnas, 0);
try {
lista = control.consultarRequerimiento1();
ayudante = new Object[lista.size()][2];
} catch (Exception e) {
e.printStackTrace();
}
for (int i = 0; i < lista.size(); i++) {
ayudante[i][0] = lista.get(i).getCiudadResidencia();
ayudante[i][1] = Math.round(lista.get(i).getSalarioPromedio());
String ciudad = lista.get(i).getCiudadResidencia();
double promedio = Math.round(lista.get(i).getSalarioPromedio());
Object[] datos = {ciudad, promedio};
//modelo.addRow(datos);
}
modelo = new DefaultTableModel(ayudante, nombresColumnas);
return modelo;
}
}
解决方案
推荐阅读
- android - 如何提示通知侦听器的权限对话框
- python - 如何在 Python 中从文本文件创建文件夹
- javascript - 装饰器不支持 Angular 6 Prod 函数调用,但调用了“..Module”
- c# - 我如何打开表单并通过一个按钮将其关闭
- angular - Angular 6 路由参数
- javascript - 样式显示 none 未在函数中触发
- android - 单击时如何在 MP 饼图中获取 String [] 元素?
- jquery - 无法为 iframe 使用可拖动的 jQuery UI
- jenkins - 通过Jenkins TestComplete 测试参数
- spring - 春季使用@Transactional注解的最佳实践