java - JTreeTable显示问题

标签 java swing listener swingx jtreetable

我有以下问题.. 我创建了一个 JTreeTable 和一个扩展 AbstractTreeTableModel 的模型。 问题是只有在每次插入操作后调用 fireTreeStructureChanged() 方法时,我的数据才会显示。事实上,如果我简单地启动方法 fireTreeNodesInserted(),什么也不会发生。

此外,我行中的数据仅在添加/删除事件后更新,如果它们简单地更改其值,则仅在单击表格后更新。

这怎么可能?

编辑

当我调用 fireTreeStructureChanged() 时,它会调用 fireTableDataChanged() 方法;相反,fireTreeNodesInserted(int firstRow, int lastRow) 调用 fireTableRowsInserted();但也许我传递给它的参数不正确...我必须传递哪一行和最后一行?

最佳答案

为了减轻事件触发的痛苦,SwingX有一个辅助类 TreeModelSupport,它可以独立于项目使用

编辑

标准方式:-) TreeModelEvent 和 TreeModelListener 中经过良好测试的 api 文档的 1:1 映射,阅读它会帮助您理解。

关于java - JTreeTable显示问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7432598/

相关文章:

java - 使用框布局在 jpanel 和同一行上添加多个 jlabel

android - 在 EditText 更改监听器中计数字符

java - 我可以控制 Java 监听器的刷新率吗?

javascript - 查询。删除委托(delegate)事件的所有监听器

java - 将字符串格式的空值从 iBatis 传递到 Postgres DB 中的整数值

java - 如何将 Dokka 添加到 Android 项目而不需要在依赖项部分添加额外的类路径?

java - 在 Java 的 AS7(和 JBPM 6.2)中使用的正确事务管理器是什么?

java - 实现StatefulJob时 "delay"是什么意思?

java - 有没有办法通过代码或命令行(JDK 9+)禁用原生 DPI 缩放?

java - 在显示 JOptionPane.showMessageDialog 后重新启用 Java 中的工具提示