我们来设计一个JInternalFrame实例,实例代码如下:
publicclassBWF{
publicstaticintWIDTH=560;
publicstaticintHEIGHT=150;
publicstaticvoidmain(Stringargs[]){
JFramejf=newJFrame("BWF-javaSwing教程");
jf.setSize(WIDTH,HEIGHT);
//创建一个中间容器,井且将之添加到顶层容器内,将之设工为流布局
JPanelcontentPane=newJPanel();
contentPane.setLayout(newFlowLayout());
//创建一个虚拟桌面容器,将dp添加到以上创建的中间容器中
JDesktopPanedp=newJDesktopPane();
dp.setLayout(newFlowLayout());
//创建两个JInternalFrame容器,井且创建6个标签组件,分别将它们添加到两个JInternalFrame容器内
JInternalFramejif1=newJInternalFrame("第一个窗口",true,true,true);
JInternalFramejif2=newJInternalFrame("第二个窗口",true,true,true);
JLabell1=newJLabel("第一个窗口,l1");
JLabell2=newJLabel("第一个窗口,l2");
JLabell3=newJLabel("第一个窗口,l3");
JLabell4=newJLabel("第二个窗口,l4");
JLabell5=newJLabel("第二个窗口,l5");
JLabell6=newJLabel("第二个窗口,l6");
jif1.setLayout(newFlowLayout());
jif1.add(l1);
jif1.add(l2);
jif1.add(l3);
jif1.setVisible(true);
jif2.setLayout(newFlowLayout());
jif2.add(l4);
jif2.add(l5);
jif2.add(l6);
jif2.setVisible(true);
dp.add(jif1);
dp.add(jif2);
contentPane.add(dp);
jf.setContentPane(contentPane);
jf.setVisible(true);
}
}
其实JInternalFrame面板的用法同JPanel面板几乎是相同的,惟一不同的是可以关闭、最大化、最小化面板。