java - 从 JXTreeTable 中获取选定的值

标签 java object selected tablemodel jxtreetable

我正在使用 JXTreeTabble 构建一个 treetable,我想根据所选值禁用/启用 menu 项目。所以,我尝试将此代码放入我的表模型中:

public Object getValueAt(int index) {
        if (index >= 0 && index < root.getSize()){
            return root.get(index);
        }

        return null;

    }

问题

以上仅在 table 的内容未展开时有效。因为 selected rowindex 可能比 table modelsize 大(模型可以有当一切都展开时,两个项目和行可以有 10 个)。此外,parentobject type 不同于children(想象一本书的章节作为它的 child )。

您建议如何正确执行上述操作?

最佳答案

假设 index 是您的行号,请尝试以下操作来获取节点对象:

TreePath path = treetable.getPathForRow(index);
Object node = path.getLastPathComponent();

其中 treetable 将是指向使用此表模型的表的指针。

关于java - 从 JXTreeTable 中获取选定的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7963287/

相关文章:

java - 我可以使用 JNDI 数据源从中获取连接字符串吗?

java - 如何并行而不是顺序执行多个查询?

Java仿射变换绘制路径

JavaScript - 如何访问对象数组中的特定值

python - SQLAlchemy:在调用构造函数时返回现有对象而不是创建新对象

jQuery 检查选​​项 val 是否被选中,进行数学计算并发出警报

javascript - 根据 $_Session 值获取选项 '' selected''

jquery - 如何使用 jQuery 查找具有特定值的选项标签

java - 对 long 和 double 的大小感到困惑

php - 在整个应用程序中使用对象