在窗体中间显示 JInternalFrame 数据

Show the JInternalFrame data in the middle of the form

我正在使用包含三个部分的 JFrame。第 1 部分是窗格,其中包含 6 个菜单按钮(左侧)。第二部分也是Pane,它在顶部显示公司的标志。第三部分是 DesktopPane,我在 DesktopPane 中使用(调用)JInterenalFrame。
如何始终将 JInterenalFrame 内容(表单数据)显示在 DesktopPane 中间?

Third section is DesktopPane in which I am using(calling) JInterenalFrame in the DesktopPane.

一个JDesktopPane 用于显示多个JInternalFrames。可以在桌面窗格周围拖动 JInternalFrame。

从你的图片来看,你的那个区域似乎只有一个 JPanel。因此,您不应使用 JDesktopPanel 和 JInternalFrame。

相反,您只需使用带有 CardLayout 的常规 JPanel。您可以根据左侧菜单中的选择替换每个面板。

有关详细信息,请参阅 How to Use CardLayout

Show the data into middle of the form

最简单的方法是使用带有 GridBagLayout 的 JPanel。

因此您需要使用 GridBagLayout 将当前面板包装在一个面板中。

所以基本代码是:

JPanel welcomePanel. = new JPanel( new GridBagLayout() );

welcomePanel.add(currentPanel, new GridBagConstraints());

现在您的 "currentPanel" 将位于 "welcomePanel" 的中心,该 "welcomePanel" 已使用 CardLayout 添加到您的面板。