转自:http://zhidao.baidu.com/link?url=gVjUar0EtrdlVWlAlR2KiQqBxVxcOlscGW8cXx4k-ApHm-6z2YsXOOi1ovjLMX0v5XCL-uMCzBZ-Hda8d-dAK_
JInternalFrame是一个轻量级窗口,不能单独出现,必须依附在最上层组件上。一般我们会将JInternalFrame加入DesktopPane方便管理,DesktopPane是一种特殊的Layered pane,用来建立虚拟桌面,它可以显示并管理众多JInternalFrame之间的层次关系。 import javax.swing.JDesktopPane; import javax.swing.JFrame; import javax.swing.JInternalFrame; public class Test extends JFrame { private JDesktopPane desktopPane = null; private JInternalFrame internalFrame = null; public Test() { super("内部窗口小例子"); init(); getContentPane().add(desktopPane); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(600, 500); setLocationRelativeTo(null); setVisible(true); } private void init(){ desktopPane = new JDesktopPane(); internalFrame = new JInternalFrame("内部窗体", true, true, true); desktopPane.add(internalFrame); internalFrame.setSize(300, 200); internalFrame.setVisible(true); } public static void main(String[] args) { new Test(); } }