1

我有一个JTable并且我想添加列值。我正在尝试这段代码:

try{
    double t = 0.00;
    DecimalFormat df = new DecimalFormat("0.00");
    int rows = empTbl.getRowCount();
    for(int row =0; row<=rows; row++) 
    {
        String am = (String) empTbl.getValueAt(row, 7);
        double d = (double) df.parse(am);
        double ans = d+t;
        jLabel7.setText("Total Sale : "+ans);
    }
}
catch(ParseException ex){ }

为什么这段代码不起作用?

4

1 回答 1

3
  • 为了避免在 Java 中进行任何解析,有适当的数据类型

  • 直接向 XxxTableModel 或 JTable 添加 Double / Long / Integer 值(取决于未知代码,您的问题)

  • 将 XxxTableModel 中的 getColumnClass 更改为 Double / Long / Integer

  • 添加 TableModelListener 并覆盖 setValueAt(proper formula) 如果 JTables 单元格中的值发生更改,则允许使用公式

  • Double / Float 没有小数位(我d i o t i c 线程,有趣!!!downvoters)

  • 使用 XxxTableCellRenderer 格式化输出到 Swing GUI

于 2013-04-16T12:01:28.947 回答