GUI简单学习

来源:互联网 发布:php开发的主要工作是 编辑:程序博客网 时间:2024/06/08 12:16

GUI简单学习总结

GUI方法演示

public class MenuDemo {    protected static final String LINE_SEPARATOR = System.getProperty("line.separator");    private JFrame f;    private MenuBar mb;//菜单栏    private Menu m1,m2,m3;//菜单夹    private MenuItem mi1,mi2,mi3,mi4;//菜单项    private TextArea ta;    private Dialog d;    private FileDialog fd;    private File file;    private BufferedReader bufr;    private BufferedWriter bufw;    public MenuDemo(){        super();        init();    }    private void init() {        f = new JFrame("菜单练习");        f.setBounds(500, 400, 500, 400);        f.setLayout(new FlowLayout());//流式布局        //菜单设置        m1 = new Menu("文件");        m2 = new Menu("退出");        m3 = new Menu("帮助");        mb = new MenuBar();        mb.add(m1);        mb.add(m2);        mb.add(m3);        mi1 = new MenuItem("打开");        mi2 = new MenuItem("保存");        mi3 = new MenuItem("退出");        mi4 = new MenuItem("帮助");        m1.add(mi1);        m1.add(mi2);        m2.add(mi3);        m3.add(mi4);        f.setMenuBar(mb);        ta = new TextArea();        f.add(ta);        f.setVisible(true);        event();    }    private void event() {        f.addWindowListener(new WindowAdapter() {            public void windowClosing(WindowEvent e) {                System.exit(0);            }        });        //绑定在菜单夹的监听器对该菜单夹中的全体菜单项生效,若无菜单夹,则不生效        m2.addActionListener(new ActionListener() {            public void actionPerformed(ActionEvent e) {                System.exit(0);            }        });        mi4.addActionListener(new ActionListener() {            public void actionPerformed(ActionEvent e) {                d = new Dialog(f);                TextArea ta = new TextArea("菜单练习\nhello world\n");                d.setBounds(600, 400, 300, 200);                Label l = new Label("你好");                d.add(l);                d.setVisible(true);            }        });        //打开        mi1.addActionListener(new ActionListener() {            public void actionPerformed(ActionEvent e) {                fd = new FileDialog(f,"打开文件",FileDialog.LOAD);                fd.setVisible(true);                String line;                if(fd.getFile()!=null){                    file = new File(fd.getDirectory(),fd.getFile());                    if(file.getName()!=null){                        ta.setText("");                        System.out.println(file.getName());                        try {                            bufr = new BufferedReader(new FileReader(file));                            while((line = bufr.readLine())!=null){                                ta.append(line+LINE_SEPARATOR);                            }                        } catch (FileNotFoundException e1) {                            e1.printStackTrace();                        } catch (IOException e2){                            e2.printStackTrace();                        }finally{                            try {                                bufr.close();                            } catch (IOException e1) {                                e1.printStackTrace();                            }                        }                    }                }            }           });    }}

事件监听机制

时间监听机制的组成

1.事件源
2.事件
3.监听器
4.处理方式
这里写图片描述

0 0
原创粉丝点击