在java中创建可移动面板内部框架

时间:2011-05-05 15:59:29

标签: java swing panel frame

我正在尝试构建简单的应用程序,仅用于知识。我想构建类似选项框的东西。当用户点击任何选项(如首选项)时,从菜单中出现可移动面板。

JFrame包含菜单栏,点击的合适菜单项应该会显示JPanel。

我不知道要继续。任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:2)

如果您打算打开对话框,请查看JDialog

答案 1 :(得分:0)

如果您想在JFrame中使用可移动窗格,则应检查JDesktopPane + InternalFrame

答案 2 :(得分:0)

要点我想您正在尝试构建类似桌面的结构,是否需要像在桌面中那样使用不同的框架,我们同时打开两个notpad文件n它应该是可移动的,因此我建议您使用 JFrame 内的 Desktoppane 上> JInternalframe :

public class Demo {
    public static void main(String[] args) {
        
        JFrame jf=new JFrame();
        jf.setLayout(null);
        jf.setSize(1280, 720);
        jf.setVisible(true);
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        JDesktopPane jDesktopPane=new JDesktopPane();
        jDesktopPane.setBounds(0, 0, 1280, 720);
        jDesktopPane.setVisible(true);
        jDesktopPane.setLayout(null);
        jf.add(jDesktopPane);
        jf.repaint();
        
        
        JInternalFrame jInternalFrame=new JInternalFrame();
        jInternalFrame.setLocation(100, 100);
        jInternalFrame.setSize(500, 300);
        jInternalFrame.setTitle("Internal frame");
        jInternalFrame.setVisible(true);
        jInternalFrame.setClosable(true);
        jInternalFrame.setResizable(true);
        jDesktopPane.add(jInternalFrame);
        jDesktopPane.repaint();
        jf.repaint();
    }
}

输出: enter image description here