我在使用 Swing 设计 MDI 应用程序时遇到了一些麻烦。
我在实现 JDesktopPane 和 JInternalFrames 时没有遇到任何问题,我的问题会更具体一点。这是我的基本容器框架一目了然:
package applicationGUI;
import javax.swing.JFrame;
public class DesktopContainer extends JFrame{
/* Fields */
/* Constructors */
public DesktopContainer(){
setContentPane(new Desktop());
setJMenuBar(AppllicationMenuBar.getMenuBar());
}
/* Public Methods */
public Desktop getDesktop(){
return (Desktop)getContentPane();
}
}
还有我的桌面:
public class Desktop extends JDesktopPane{}
请注意,我将桌面设置为 DesktopContainer 的内容窗格。我想要的是,能够在桌面上添加 JPanel(特别是在 JMenuBar 下方)。不幸的是,我无法做到这一点。最后,这是我的问题:
1-) 可以在 JDesktopPane 上绘制 JPanel 对象吗?我做了一些挖掘,我猜它与 JLayeredPane 功能有关,但不幸的是我无法实现它。
2-) 如果无法在 JDesktopPane 上绘制 JPanel 对象,我该如何做我想做的事,有什么建议吗?我只是想,“将两个 JPanel 添加到 JFrame,根据需要使用顶部的一个,并将 JDesktopPane 绘制到下面的第二个 JPanel 中”。这是一个好方法吗?
谢谢您的回答..