用动态增长的数据对JTable进行排序

问题描述

我试图让JTable始终保持顺序,该表无效。

我按表模型添加行。如何让新添加的行定位订单位置?

//the add code
Object[] row= {current_hard_bin_degree,1,String.format("%.2f",1*100.0f/total_bins)+"%"};
DefaultTableModel model = (DefaultTableModel)myTable.getModel();
model.addRow(te);
//i tried to this,but it just can be order when i click the header
 tablerowsorter<TableModel> sorter
                 = new tablerowsorter<TableModel>(myTable.getModel());
         myTable.setRowSorter(sorter);
         sorter.setComparator(0,new Comparator<Object>() {
            public int compare(Object arg0,Object arg1) {
               try {
                  int a = Integer.parseInt(arg0.toString());
                  int b = Integer.parseInt(arg1.toString());
                  return a - b;
               } catch (NumberFormatException e) {
                  return 0;
               }
            }
         });

enter image description here

解决方法

如何使用growx? MigLayout push VS grow

例如,

private void display(int i) {
         model.add(sorter,"cell 0"+i+",growx");
}