在Swing MDI中管理JInternalFrames



在创建MDI Swing GUI时,我有许多JInternalFrames被添加到JFrame中的JDesktopPane中。我通过在initComponents方法之后的构造函数中添加setVisible(false)使这些内部帧不可见(因为GUI构建器会自动在此方法中设置这些帧可见)。

在运行时,用户可以根据帧的当前状态,通过调用调用setVisible(true)和setVisible(false)的监听器来选择打开和关闭JInternalFrames。我喜欢使用这种设计使内部框架的先前位置和状态保持完整。然而,有些东西告诉我,这一定是非常错误的,即使我还没有看到任何缺点。

所以,我的问题是:这是糟糕的设计吗?

在多文档接口(MDI)的上下文中,这种方法是非常合理的。此外,您可以使用JInternalFrame方法setSelected()来突出显示特定的帧。为了方便导航,可以在Action中使用此方法和其他方法,如下所示。

最新更新