gpt4 book ai didi

java - 将包含 Swing Panel 从一个 Container 移动到另一个 Container 后,OfficeBean 不会显示

转载 作者:行者123 更新时间:2023-11-30 11:58:36 27 4
gpt4 key购买 nike

我正在开发一个 Java 6 小程序,它允许用户查看 OO (v.3.2) 文档(只读),如果他们选择,单击一个按钮启动一个新的 JDialog 窗口,其中显示文档允许用户根据需要标记和编辑它。完成后,他们可以关闭 JDialog,它将文档保存到服务器并在原始小程序窗口中重新显示更新后的文档(再次为只读)

我猜想我可以使用嵌入在 Swing 面板中的 OfficeBean 的单个实例来完成此操作。但是,当单击“编辑”按钮时,我似乎无法成功地将我的面板(包含 OfficeBean)从小程序移动到 JDialog。我得到的只是 JDialog 中应该放置文档的空白区域。我没有收到任何错误。

我目前设法通过在每次需要显示文档时创建新的 OfficeBean 实例来解决这个问题(一次是在加载小程序时,一次是在用户选择编辑并在 JDialog 中打开时,以及最后,当他们在对话框中单击“保存”并且编辑后的结果再次显示在小程序中时。)然而,这意味着往返于文档来源服务器的三次往返。这对我来说似乎很疯狂。

我绝不是 Swing 专家,很可能会犯一个愚蠢的错误。然而,我已经做了很多摆弄、调试和谷歌搜索,但似乎无法让它工作。任何人都可以帮助我吗?我是否正在尝试做一些根本不可能的事情?我希望不会。

最佳答案

Swing 中的一个规则是组件一次只能显示/附加到 gui“树”的一部分。当您将组件“移动”到对话框时,您是否首先将其从小程序中删除?

关于java - 将包含 Swing Panel 从一个 Container 移动到另一个 Container 后,OfficeBean 不会显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3100571/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com