请教高人
我在做一个网管程序
界面分成左右两部分,左是用户列表
右边用来显示要查询的内容,例如查询当前流量最大的用户信息
该信息从数据库中读取,这个右边的JTable怎么写啊?
谢谢

解决方案 »

  1.   

    你把数据从数据库中读取出来,存成一个数组或者Vetor,如:
                DefaultTableModel model = (DefaultTableModel) yourTable.getModel();
                model.setRowCount(0);//clear old data
                try {
                    Vector<Vector<Object>> vars = get data from Database;
                    for (Vector<Object> v : vars) {
                        model.addRow(v);
                    }
                } catch (Throwable e) {
                    JOptionPane.showMessageDialog(null, "Error!");
                }
      

  2.   

    jtable是被设计成数据和显示分离的你必须要修改你用的数据集合然后刷新界面
      

  3.   

    jl_xiao这样的话显示会有点问题应该。个人怀疑,因为我最近做的一个JTable最开始也是这样,然后一直有问题,你对你的model要重新弄,然后每查询一次刷新一次,然后显示,这样显示至少不会有问题,至于代码的冗余,可以慢慢调整
      

  4.   

    cindy20050919 可不可以帮我看看我的问题
      

  5.   

    cindy20050919:有啥问题,请高手回答,呵呵
      

  6.   

    唯一的问题是,如果你的数据库读取比较慢,那么就在外面套一个:
    EventQueue.invokeLater(new Runnable(){
        public void run(){
            //我上面的代码。
            //担心界面没刷新,就调用
            yourTable.update();
        }
    }