JInternalFrame无法在desktopPane里面正确显示出来,求解答

JInternalFrame无法在desktopPane里面正确显示出来,求解答

如果你的 JInternalFrame 无法在 JDesktopPane 中正确显示,那可能是你的代码中有一些问题。以下是一个基本的例子,展示了如何在 JDesktopPane 中创建和显示一个 JInternalFrame

import javax.swing.*;

public class Main {
    public static void main(String[] args) {
        // 创建 JFrame
        JFrame frame = new JFrame("DesktopPane Example");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // 创建 JDesktopPane
        JDesktopPane desktop = new JDesktopPane();

        // 创建 JInternalFrame
        JInternalFrame internalFrame = new JInternalFrame("Internal Frame", true, true, true, true);
        internalFrame.setBounds(10, 10, 200, 200);

        // 添加 JInternalFrame 到 JDesktopPane
        desktop.add(internalFrame);

        // 设置 JInternalFrame 为可见
        internalFrame.setVisible(true);

        // 添加 JDesktopPane 到 JFrame
        frame.add(desktop);

        // 设置 JFrame 的大小,并使其可见
        frame.setSize(500, 500);
        frame.setVisible(true);
    }
}

在这个例子中,首先创建了一个 JFrame,然后创建了一个 JDesktopPane。然后创建了一个 JInternalFrame 并将其添加到 JDesktopPane。最后,将 JDesktopPane 添加到 JFrame

请注意,你需要调用 setVisible(true) 来让 JInternalFrame 可见。如果你忘记调用 setVisible(true)JInternalFrame 就不会在 JDesktopPane 中显示。