【问题标题】:How to display JTree file in JTextArea如何在 JTextArea 中显示 JTree 文件
【发布时间】:2012-07-06 13:41:57
【问题描述】:

在我的程序中,我有一个JTree,其中包含许多文件夹和文件。当您在JTree 中选择一个文件时,我希望该文件显示在JTextArea 中。

我不,你可以使用getLastSelectedPathComponent()JTree 中获取最后一个选定的项目,这可用于从树中获取选定的文件,但这是树的一个节点......有没有办法像使用FileReaderBufferReader 一样从此节点获取文本?

【问题讨论】:

    标签: java swing jtree jtextarea


    【解决方案1】:

    我会将File 对象放在树中,并使用单元格渲染器根据需要显示(渲染)它们。

    有关示例,请参阅 File Browser GUI。该示例还演示了如何检索所选文件或目录的详细信息。它使用Desktop 类来显示(/打印/编辑)文件。

    【讨论】:

    • +1 也是一个很好的答案!!但它只是比我想要的多一点,我认为它需要一些时间才能让它按照我想要的方式工作,所以我接受了 Aaron Digulla 给出的答案
    【解决方案2】:

    不直接。你需要做什么:

    1. 将文件名(如果您想让您的生活更轻松,请使用路径)存储在节点中。为此扩展DefaultMutableTreeNode
    2. 当一个节点被选中时,从中读取文件名。
    3. 使用通常的 Java IO API 以文本形式读取文件

    【讨论】:

    • 当您说“将文件名存储在节点中”是什么意思?创建 JTree 时你会这样做吗?
    • 你用什么样的节点类型来构建你的树?
    • 只是一个普通的 DefaultMutableTreeNode
    • 使用新字段 File file 创建一个新类型 FileTreeNode extends DefaultMutableTreeNode。创建节点时设置文件。
    猜你喜欢
    • 2013-02-15
    • 2020-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-30
    • 2023-03-12
    • 2010-10-17
    • 2011-09-15
    相关资源
    最近更新 更多