【问题标题】:JTable: Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 0 >= 0JTable:线程“AWT-EventQueue-0”中的异常 java.lang.ArrayIndexOutOfBoundsException:0 >= 0
【发布时间】:2014-04-14 15:46:05
【问题描述】:

我在调用这个函数时遇到了问题。我创建了一个 JTable,我希望它显示来自 ArrayList 的数据。请帮我解决它!

 private void LoadData() 

{
        String[] columns = new String [] { "Ho", "Tenlot", "Ten", "Ma", "NgSinh", "Dia Chi", "Phai","Luong", "MaNVQL", "Phong" };

        DefaultTableModel model = new DefaultTableModel(null , columns);
        ArrayList<CLSNhanVien> ds = new ArrayList<CLSNhanVien>();
        ds = NHANVIENDAO.NhanVienDAO.layDanhSachNhanVien();

        for (int i = 0; i <ds.size(); i++)
        {
            String ho = ds.get(i).getHONV();
            String tenlot = ds.get(i).getTENLOT();
            String ten = ds.get(i).getTENNV();
            String ma = ds.get(i).getMANV();
            Date ns = ds.get(i).getNGAYSINH();
            String dchi = ds.get(i).getDIACHI();
            String phai = ds.get(i).getPHAI();
            float luong = ds.get(i).getLUONG();
            String manvql = ds.get(i).getMA_NQL();
            int phg = ds.get(i).getPHONG();
             Object[] items = new Object[] {ho, tenlot, ten, ma, ns, dchi, phai, luong, manvql, phg};
                model.addRow(items);
        }


        jTable1.setRowHeight(30);
        jTable1.getColumnModel().getColumn(0).setPreferredWidth(70);
        jTable1.getColumnModel().getColumn(1).setPreferredWidth(70);
        jTable1.getColumnModel().getColumn(2).setPreferredWidth(70);
        jTable1.getColumnModel().getColumn(3).setPreferredWidth(70);
        jTable1.getColumnModel().getColumn(4).setPreferredWidth(200);
        jTable1.getColumnModel().getColumn(5).setPreferredWidth(200);
        jTable1.getColumnModel().getColumn(6).setPreferredWidth(70);
        jTable1.getColumnModel().getColumn(7).setPreferredWidth(70);
        jTable1.getColumnModel().getColumn(8).setPreferredWidth(70);
        jTable1.getColumnModel().getColumn(9).setPreferredWidth(70);
    }

【问题讨论】:

  • 它对你有用吗?如果是,请接受答案。

标签: java swing jtable


【解决方案1】:

您似乎有一个空的 ArrayList...尝试在您的数组和模型中手动添加一个对象...并以这种方式重构

for (CLSNhanVien element : ds)
{

    String ho = element.getHONV();
    String tenlot = element.getTENLOT();
    String ten = element.getTENNV();
    String ma = element.getMANV();
    Date ns = element.getNGAYSINH();
    String dchi = element.getDIACHI();
    String phai = element.getPHAI();
    float luong = element.getLUONG();
    String manvql = element.getMA_NQL();
    int phg = element.getPHONG();
     Object[] items = new Object[] {ho, tenlot, ten, ma, ns, dchi, phai, luong, manvql, phg};
        model.addRow(items);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-06
    • 2014-04-03
    • 2012-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多