java GUI 总结(2)JFrame

1.JFrame窗体是一个容器,作为其他组件的载体。

使用方法:(1)继承自java.swing.JFrame类。        

 1 import java.awt.BorderLayout;
 2 
 3 import javax.swing.JFrame;
 4 import javax.swing.JLabel;
 5 
 6 public class Test extends JFrame{
 7     private static final long serialVersionUID = 1L;
 8     
 9     public Test(){
10         super();   //调用父类构造方法,创建一个默认隐藏的窗体
11         setTitle("衿沫青冥");  //设置标题
12         setBounds(0, 0, 300, 300);   //设置窗体位置坐标(0,0),大小300*300
13         setDefaultCloseOperation(EXIT_ON_CLOSE);//设置窗体关闭方式
14         getContentPane().add(new JLabel("hello!"),BorderLayout.CENTER);//添加文字标签“hello”
15         setVisible(true);   //设置窗体可见
16     }
17     public static void main(String[] args) {
18         // TODO 自动生成的方法存根
19         new Test();
20     }
21 
22 }
View Code

      (2)使用new操作符创建。

        JFrame()    构造一个初始不可见的窗体。

        JFrame(String title)     构造第一初始不可见,具有指定标题的新窗体。 

 1 import java.awt.BorderLayout;
 2 
 3 import javax.swing.JFrame;
 4 import javax.swing.JLabel;
 5 
 6 public class Test{
 7     public Test(){
 8         JFrame frame = new JFrame();
 9         frame.setTitle("衿沫青冥");  //设置标题
10         frame.setBounds(0, 0, 300, 300);   //设置窗体位置坐标(0,0),大小300*300
11         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置窗体关闭方式
12         frame.getContentPane().add(new JLabel("hello!"),BorderLayout.CENTER);//添加文字标签“hello”
13         frame.setVisible(true);   //设置窗体可见
14     }
15     public static void main(String[] args) {
16         // TODO 自动生成的方法存根
17         new Test();
18     }
19 }
View Code

2.有关窗体的关闭方式

  void setDefaultCloseOperation(int)

      DO_NOTHING_ON_CLOSE;           什么都不做就关闭窗体

      DISPOSE_ON_CLOSE;       隐藏并释放窗体所占资源

      HIDE_ON_CLOSE;                        隐藏窗口

      EXIT_ON_CLOSE;          退出应用程序
     调用 int getDefaultCloseOperation()可获得已设置的窗体关闭方式。

3.有关窗体的位置和大小

  (1)设置位置和大小

      void setBounds(int, int, int, int)
               void setBounds(Rectangle)

  (2)设置大小

      void setSize(int, int)
                 void setSize(Dimension)
                 Dimension getSize()

  (3)设置位置

      void setLocation(int, int)
                 Point getLocation()

  (4)设置窗体居显示屏正中显示

      使用方法:void setLocationRelativeTo(Component),将Component设置成null

      或者使用:

    final Dimension size = getToolkit().getScreenSize();
    setLocation((size.width - x)/ 2, (size.height - y) / 2);    //x,y为窗体的宽和高

4.其他常用方法

  void setJMenuBar(JMenuBar menuBar);设置窗体的菜单栏

  JMenuBar getJMenuBar();返回此窗体设置的菜单栏

 

  void setContentPane(Container containerPane);设置窗体的内容面板

  Container getContentPane();返回窗体的内容面板

 

  void remove(Component comp);从容器中移除指定组建

 

  void setIconImage(Image image);设置窗口图标显示的图像

 5.JFrame的综合使用

 1 class Test extends JFrame(){
 2     public MainFrame(){
 3             super();
 4             setTitle("呆呆酒店管理系统");
 5             setSize(1500,900);
 6             final Dimension size = getToolkit().getScreenSize();
 7             setLocation((size.width - 1500)/ 2, (size.height - 900) / 2);
 8             setDefaultCloseOperation(EXIT_ON_CLOSE);
 9         
10             setContentPane(getPanel());
11         
12     }
13     /**
14      * 获取主窗体面板
15      * @return a MainFrame Panel
16      */
17     private JPanel getPanel(){
18         panel = new JPanel();
19         panel.setLayout(new BorderLayout());
20         
21         panel.add(getTabbedPane(),BorderLayout.NORTH);
22         panel.add(getDesktopPane(),BorderLayout.CENTER);
23         panel.add(getStatePane(),BorderLayout.SOUTH);
24         
25         return panel;
26         
27     }
28 }
View Code

 

posted @ 2017-05-20 11:36  衿沫青冥  阅读(348)  评论(0编辑  收藏  举报