gpt4 book ai didi

java - 如何将面板发送到内部框架的背面?

转载 作者:行者123 更新时间:2023-12-02 07:26:14 25 4
gpt4 key购买 nike

我有一个 JDesktopPane,里面绘制了一个面板。我的顶部还有一个帮助菜单。

当它绘制面板时,它会将其绘制在菜单栏的顶部,遮挡菜单栏。

如何将面板移到后面,从而解锁菜单栏?

这是构造函数。

public Desktop () {
Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension scrnsize = toolkit.getScreenSize();
desktop.setBackground(Color.orange);
desktopFrame.setContentPane(desktop);
desktopFrame.addKeyListener(this);
desktopFrame.setVisible(true);
desktopFrame.setSize(scrnsize);

desktopBackground = new JPanel();
desktopBackground.setLocation(30 , 10);
desktopBackground.setSize(100, 110);
desktopBackground.setBackground(Color.red);

setJMenuBar(menuBar);

menuBar.add(startButton);
startButton.add(programsButton);
programsButton.add(terminalButton);
desktopFrame.setJMenuBar(menuBar);

terminalButton.addActionListener(this);

desktop.add(menuBar);
desktop.add(desktopBackground);
}

最佳答案

菜单栏甚至不应该位于内部面板或组件可以遮挡的位置。如果这是一个 JFrame 应用程序,则应通过其 setJMenuBar(...) 方法将 JMenuBar 直接添加到 JFrame。然后,可以将 JDesktopPane 添加到 JFrame BorderLayout.CENTER,并将 JInternalFrames 添加到 JDesktopPane。这样就没有机会覆盖菜单栏。

关于java - 如何将面板发送到内部框架的背面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13558960/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com