码迷,mamicode.com
首页 > 编程语言 > 详细

Java GUI

时间:2018-09-08 15:26:11      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:eve   分享图片   适配器设计模式   rri   guid   WAD   ble   令行   demo   

1. GUI

Graphical user interface(图形用户接口):用图形的方式,来显示计算机操作的界面,这样更加直观

CLI:command line User interface(命令行用户接口):常用的Dos命令行操作,需要记住一些常用的命令,操作不直观

java.awt:Abstract Window ToolKit(抽象窗口工具包):需要调用本地系统的方法实现功能,属于重量级控件

javax.swing:在AWT的基础上,建立的一套图形界面系统,提供了很多的组件,而且完全由java实现,增加了移植性,属于轻量级控件

技术分享图片

2. Frame

public void setTitle(String s):设置窗体的标题

public void setSize(width, height):设置窗体的大小

public void setLocation(x, y):设置窗体的区域

public void setBounds(x, y, width, height):同时设置窗体的大小和所在区域

public void setVisible(true):设置窗体是否可见

public class GUIDemo {
    public static void main(String[] args){
        Frame f = new Frame();
        // Frame f = new Frame("窗口标题");
        
        f.setTitle("frame");    // 设置窗体标题
        f.setSize(400, 300);    // 单位:像素,设置窗体的大小
        /* 等同于:
         * Dimension d = new Dimension(400,300);
         * f.setSize(400, 300);
         */
        f.setLocation(400,200);    // 设置窗体所在的区域
        /* 等同于
         * Point p = new Point(400, 200);
         * f.setLocation(p);
         */
        
        /*
         * f.setBounds(x, y, width, height);
         * 等同于:
         * f.setLocation(x, y);
         * f.setSize(width, height);
         */
        
        f.setVisible(true);
    }
}

 

3. 事件监听机制

事件源:事件发生的地方

事件:要发生的事情

事件处理:针对发生的事情做出的处理方案

事件监听:把事件源和事件联系起来

public class GUIDemo {
    public static void main(String[] args){
        Frame f = new Frame();
        // Frame f = new Frame("窗口标题");
        
        f.setTitle("frame");    // 设置窗体标题
        f.setSize(400, 300);    // 单位:像素,设置窗体的大小
        /* 等同于:
         * Dimension d = new Dimension(400,300);
         * f.setSize(400, 300);
         */
        f.setLocation(400,200);    // 设置窗体所在的区域
        /* 等同于
         * Point p = new Point(400, 200);
         * f.setLocation(p);
         */
        
        /*
         * f.setBounds(x, y, width, height);
         * 等同于:
         * f.setLocation(x, y);
         * f.setSize(width, height);
         */
        f.addWindowListener(new WindowListener(){

            @Override
            public void windowOpened(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }

            @Override
            public void windowClosing(WindowEvent e) {
                // TODO Auto-generated method stub
                System.exit(0);
            }

            @Override
            public void windowClosed(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }

            @Override
            public void windowIconified(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }

            @Override
            public void windowDeiconified(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }

            @Override
            public void windowActivated(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }

            @Override
            public void windowDeactivated(WindowEvent e) {
                // TODO Auto-generated method stub
                
            }
            
        });
        f.setVisible(true);
    }
}

 

4. 适配器设计模式

接口的方法比较多,也得把其他的实现也提供了,即使是空实现

解决方案:接口(方法比较多)------>适配器(实现接口,空实现)------->实现类(用哪个重写哪个)

针对上例的改进版:

f.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });

 

Java GUI

标签:eve   分享图片   适配器设计模式   rri   guid   WAD   ble   令行   demo   

原文地址:https://www.cnblogs.com/feng-ying/p/9608994.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!