作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我制作了一个 jtable,到目前为止一切都工作正常,但在对表的值进行排序时仍然遇到问题。我的一些代码:
int nalt = (int) (1 + ((altmax - altmin) / incr));
tabela = new JTable(new Object[nalt][6], colunas);
for (int i = 0; i <= (nalt - 1); i = i) {
for (double j = altmin; j <= altmax; j = j + incr) {
Double tati = new Double(j);
tabela.setValueAt(tati, i, 0);
i = i + 1;
}
}
tabela.setPreferredScrollableViewportSize(tabela.getPreferredSize());
tabela.setFillsViewportHeight(true);
tabela.setAutoCreateRowSorter(true);
JScrollPane jps = new JScrollPane(tabela);
panel2.add(jps);
问题是,当我尝试将列从大到小排序时,我得到这样的结果:
950
9000
850
80000
7500
7
6000
如果您能帮助我,我将不胜感激
谢谢
最佳答案
显示的排序顺序似乎基于字符串
。如图here ,您的(看不见的)TableModel
必须返回适合数字排序的 Comparable
类型,例如Double.class
。请参阅tutorial例如。
附录:我做错了什么?
显示了 Double.class 的 getColumnClass()
的最小实现 here 。启用自动RowSorter
并进行实验以查看效果。
table.setAutoCreateRowSorter(true);
关于java - setAutoCreateSorter(true) 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18043335/
我制作了一个 jtable,到目前为止一切都工作正常,但在对表的值进行排序时仍然遇到问题。我的一些代码: int nalt = (int) (1 + ((altmax - altmin) /
我是一名优秀的程序员,十分优秀!