java - 何时使用convertRowIndexToModel

标签 java swing jtable

我有一些显示 JTable 的 JDialog。 单击标题列时,会对该列进行排序。 我的问题是:我如何知道何时单击了列标题并因此激活了排序。 当排序处于 Activity 状态时,我知道我应该使用 .convertRowIndexToModel 方法。 但是,如果没有 Activity 排序,我如何检测列是否正在排序,以免弄乱正确的索引?

最佳答案

一般来说,当您从 View (JTable) 获取索引值并尝试在模型中查找某些值时,您应该始终使用 convertRowIndexToModel。当您使用 JTable 的方法时,JTable 会自动执行此操作,但如果您不使用它,则需要自己处理。

无需知道 View 是否已排序...

如果您“确实”想知道表格何时排序,您可以附加 RowSorterListener到表使用的 TableRowSorter

您还可以使用TableRowSorter#getSortKeys查看排序中包含哪些列...

关于java - 何时使用convertRowIndexToModel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25926070/

相关文章:

java - thymeleaf 将文件绑定(bind)到对象

java - 来自 TableModel 的 JTable - 将按钮添加到每一行

java - 使用 JTable 和 JModel 时遇到问题

java - 初始化后向 Jtable 添加 header

java - JSP各种jsp特性的执行顺序

java - 在 primefaces 中单击 ESCAPE(ESC) 时关闭所有对话框

java - 如何制作归并排序算法?

java - Swingx DefaultColumnControlPopup 菜单仍然打开

java - 当 SwingWorker 在后台工作时,对话框没有响应

java - 自动调整jxtable列的大小