0

我想使用 Java 6 中新增的 JTable 行排序器。但我还需要它在 Mac OSX 中与 Java 5 兼容。

是否可以在运行时找出 JVM 版本,并为带有和不带有行排序器的 JTable 使用不同的代码?

4

2 回答 2

1

您总是可以使用SwingX库中的 JXTable。它具有内置的排序功能

于 2008-12-04T12:35:48.543 回答
0
  1. 您可以在系统属性“java.version”中找到 JVM 版本。

  2. 将 JTable 排序器对象的源复制到您的项目中并使用它。请注意,除非您拥有 Sun 的许可证,否则您不得分发此文件。因此,这对于您只在自己或公司内部使用的东西是可以的。出售或将其放在网上供下载是不行的。伊纳尔

  3. 编写一个实现排序器接口的辅助类。在这个类中,放置以下代码:

    类 sorterClass = Class.forName("javax.swing.table.TableRowSorter");

当这引发 ClassNotFoundException 时,则该类不可用。如果是,请使用 Reflection onsorterClass创建一个实例并将其安装在桌子上。

注意:您不得在任何地方导入任何 Java 6 类!如果这样做,加载帮助程序类将失败。此外,您必须使用 Java 5 编译代码。

于 2008-12-04T12:17:35.430 回答