public static void main(String[] args) throws Exception {
//设置外观为当期系统的
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
JFrame jf=new JFrame();
jf.setSize(600,400);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//创建桌面面板
JDesktopPane desk=new JDesktopPane();
//创建菜单
JMenuBar bar=new JMenuBar();
JMenu menu=new JMenu("基础质料");
JMenuItem hrItem=new JMenuItem("人事管理");
hrItem.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//创建内部窗口
System.out.println("==");
JInternalFrame frame=createInternaFrame();
//讲内部窗口添加到虚拟面板中
desk.add(frame);
//设置当前为现中状态
try{
frame.setSelected(true);
}catch (PropertyVetoException e1){
e1.printStackTrace();
}
}
});
//组合
menu.add(hrItem);
bar.add(menu);
//将菜单栏转载到窗口中
jf.setJMenuBar(bar);
jf.setContentPane(desk);
jf.setVisible(true);
}
//测试用户创建内部窗口
public static JInternalFrame createInternaFrame(){
JInternalFrame frame=new JInternalFrame(
"人事管理",
true,//是否最大化
true,//是否可关闭
true,//最大
true//是否显示图标
);
//设置大小
frame.setSize(300,150);
//位置
frame.setLocation(50,50);
//创建面板
JPanel panel=new JPanel();
panel.add(new JLabel("人事"));
panel.add(new JButton("确定"));
//将面板添加到内部窗口中
frame.setContentPane(panel);
frame.setVisible(true);
return frame;
}