在Swing MDI中管理JInternalFrame

时间:2013-05-11 21:56:05

标签: java swing mdi jinternalframe jdesktoppane

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

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

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

1 个答案:

答案 0 :(得分:1)

Multiple Document Interface(MDI)的背景下,这种方法非常合理。此外,您可以使用JInternalFrame方法setSelected()突出显示特定的框架。为了便于导航,可以在Action中使用此方法和其他方法,如图here所示。