【问题标题】:How can i keep the Jtable contents on the primary JFrame-1 after displaying it in new JFrame-2在新的 JFrame-2 中显示后,如何将 Jtable 内容保留在主 JFrame-1 上
【发布时间】:2011-03-25 02:08:23
【问题描述】:

我是 Java 新手,非常感谢任何帮助...在此先感谢。

JFrame-1 与 JTable 和 JEditorPane 分开。在 JFRame-1 上发生一些事件之后,我创建了一个新的 JFrame-2。 JFrame2 还实现了 JSplitPane(带有 2 个 JTables(1 & 2) 和 1 个 JEditorPane)。 一旦我将 JTabel 的内容从 frame-1 复制到 frame-2 中的 Jtabel2。表格从第 1 帧消失,我如何将表格的内容保留在第 1 帧和第 2 帧中。 这是我用来分割 Frame-2 窗格的代码,在调试期间,这是 Frame-1 中的 table(m_clsJTable) 清除的地方。

JSplitPane top = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, new JScrollPane(clsNewJTable), new JScrollPane(m_clsJTable)); 
        JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, top, new JScrollPane(m_clsJEditorPane)); 

【问题讨论】:

    标签: java swing


    【解决方案1】:

    您不能将相同的组件放在两个不同的容器中。如果您希望两个容器对某些数据具有相同的视图,那么您应该为每个容器创建一个单独的视图类,并让它们共享同一个模型。

    【讨论】:

    • +1 这个相关的example也讲了如何同步滚动。
    • 现在我明白为什么它要从 Frame-1 中清除表格了。为每个单独的视图类 - 请您解释一下或指出一些与此相关的内容。谢谢!
    • @trashgod:抱歉,我的示例中每个视图都有一个模型。 @rkbdi:我认为它只适用于两个视图中的一个模型。
    • @MeBigFatGuy- 我正在使用 defaultTableModel 在 Frame-1 中创建 JTable。我仍然可以为每个表创建单独的视图类吗?你能给我一个共享相同 defaultTableModel 的 2 个组件 (JTable) 的示例吗?
    • 我在 Frame-2 中找到了桌子。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2012-10-29
    • 2017-07-20
    • 2015-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-15
    相关资源
    最近更新 更多