创建主窗体(转)

该链接:  http://www.51cto.com/art/200807/79600.htm

创建主窗体的步骤如下:

(1)创建JXCFrame类,在类中创建并初始化窗体对象,为窗体添加桌面面板,并设置背景图片。关键代码如下:

例程01  代码位置:光盘\TM\01\JXCManager\src\com\lzw\JXCFrame.java

private JDesktopPane desktopPane; private JFrame frame; private JLabel backLabel; private Preferences preferences; //创建窗体的Map类型集合对象 private Map<String, JInternalFrame> ifs = new HashMap<String, JInternalFrame>(); public JXCFrame() { frame = new JFrame("企业进销存管理系统");     //创建窗体对象 frame.addComponentListener(new FrameListener());     //添加窗体事件监听器 frame.getContentPane().setLayout(new BorderLayout());    //设置布局管理器 frame.setBounds(100, 100, 800, 600);        //设置窗体位置和大小 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   //设置窗体默认的关闭方式 backLabel = new JLabel();          //背景标签 backLabel.setVerticalAlignment(SwingConstants.TOP);    //设置背景标签垂直对齐方式 backLabel.setHorizontalAlignment(SwingConstants.CENTER);   //设置背景标签水平对齐方式 updateBackImage();            //调用初始化背景标签的方法 desktopPane = new JDesktopPane();        //创建桌面面板 desktopPane.add(backLabel, new Integer(Integer.MIN_VALUE));  //将背景 标签添加到桌面面板中 frame.getContentPane().add(desktopPane);      //添加桌面面板到窗体中 JTabbedPane navigationPanel = createNavigationPanel();     //创建导航面板 frame.getContentPane().add(navigationPanel, BorderLayout.NORTH); //添加 导航面板到窗体中 frame.setVisible(true);           //显示窗体 }

(2)编写updateBackImage()方法,在该方法中初始化背景标签,背景标签使用HTML超文本语言设置了主窗体的背景图片,该图片将随主窗体的大小自动缩放。关键代码如下:

例程02  代码位置:光盘\TM\01\JXCManager\src\com\lzw\JXCFrame.java

private void updateBackImage() { if (backLabel != null) { int backw = JXCFrame.this.frame.getWidth(); int backh = frame.getHeight(); backLabel.setSize(backw, backh);        //初始化背景标签的大小 backLabel.setText("<html><body><image width='" + backw + "' height='" + (backh - 110) + "' src=" + JXCFrame.this.getClass().getResource("welcome.jpg") + "'></img></body></html>");      //设置背景标签的图像 } }

(3)在类的静态代码段中设置进销存管理系统的外观样式。Swing支持跨平台特性,它可以在不同的操作系统中保持一致的外观风格,但是本系统使用UIManager类的setLookAndFeel()方法设置程序界面使用本地外观,这样可以使程序更像本地应用程序。关键代码如下:

例程03  代码位置:光盘\TM\01\JXCManager\src\com\lzw\JXCFrame.java

static { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception e) { e.printStackTrace(); } }

(4)编写主窗体的main()入口方法,在该方法中创建登录窗体对象,登录窗体会验证登录信息,并显示主窗体界面。关键代码如下:

例程04  代码位置:光盘\TM\01\JXCManager\src\com\lzw\JXCFrame.java

public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { new Login(); } }); }  
 
 
posted @ 2013-12-30 20:15  菜鸟搞IT  阅读(617)  评论(0编辑  收藏  举报