繁体   English   中英

如何使用java从Vector中将数据放入JTable中

[英]How to put data in JTable from Vector with java

我有一个只有字段名称而没有数据的表,我想通过Vector输入数据

我试试这种鳕鱼但是不行

 Object[][] ss= new frand[1][];
      for(int i = 0 ; i<feeds.size();i++){
          ss[1][i]=feeds.get(i);

      }
    JTable table = new JTable(
//      new Object[][] {
//        new frand[] { feeds.get(0) },
//        new frand[] { feeds.get(1) }
//      },
            ss,
      new String[] { "connect client " }
    );
  frandtabmodule module =  new frandtabmodule(feeds);
    table.setModel(module);

我怎么做?

从数组A加载表,如果表只是创建它,你可以简单地使用:

     table.setModel (new javax.swing.table.DefaultTableModel (
                 new String [] [] {
 {"2014-02-22", A.get(0)}
     }   ,          
                 new String [] {
             "Date", "Total" 
         }));

如果没有,您可以使用DefaultTableModel类及其方法和AddColumn addRow

您似乎首先通过传递数据和列来创建表,然后创建模型并设置模型。 当您在JTable构造函数中传递列和行数据时,该表将创建并使用使用该数据初始化的DefaultTableModel 如果你有一个专门的模型frandtabmodule包装原始矢量feeds ,则不需要构建数组并将其传递给表。 只需使用JTable默认构造函数,然后调用setModel ,或使用以模型作为参数的构造函数。

有关更多详细信息和示例,请参见如何使用表

编辑:

不确定是不是意图,但是发布的代码表明您希望将矢量元素用作列。 如果这不是意图,那么在构建数组时似乎混合了索引。 第一组方括号用于行,第二组用于列。 例如:

private static Object[][] vector2DArray(Vector<Object> sourceVector) {
    Object[][] rows = new Object[sourceVector.size()][1];

    for (int i = 0; i < sourceVector.size(); i++) {
        rows[i][0] = sourceVector.get(i);
    }

    return rows;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM