zoukankan      html  css  js  c++  java
  • atitit.窗体静听esc退出本窗体java swing c# .net php

    atitit.窗体静听esc退出本窗体java swing c# .net php 

    1. 监听esc  按键 1

    1.1. 监听一个组件 1

    1.2. 监听加在form 1

    2. 关闭窗体 2

    1. 监听esc  按键

    1.1. 监听一个组件

    1.2. 监听加在form

    作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

    转载请注明来源: http://blog.csdn.net/attilax

    final Toolkit toolkit = Toolkit.getDefaultToolkit();

                        toolkit.addAWTEventListener(new AWTEventListener(){

                                @Override public void eventDispatched(AWTEvent e){

                                    if (e.getID() == KeyEvent.KEY_PRESSED) {

                                        KeyEvent evt = (KeyEvent) e;

                                        if (evt.getKeyCode() == KeyEvent.VK_ESCAPE) {

                                            frame.dispose();

                                            System.exit(0);

                                        }

                                    }

                                }

                            },AWTEvent.KEY_EVENT_MASK);

    Java code
    Toolkit.getDefaultToolkit().addAWTEventListener(new AWTEventListener(){
        .............
    });


    这个办法最好。监听了所有事件。不管是在哪个componet上,button,form等..

    这个不起作用,可能focus到个一个组件上栏。。三,这个only不个事件捆绑到个frm上兰..

    //        frame.addKeyListener(new KeyAdapter() {

    //            @Override

    //            public void keyPressed(KeyEvent e) {

    //                if (KeyEvent.VK_ESCAPE == e.getKeyCode()) {

    //                   // System.exit(0);

    //                System.out.println("---colose...");

    //                frame.dispose();

    //                }

    //            }

    //        });

    2. 关闭窗体

     

    只要在每个Frame里设定this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);即可。

    EXIT_ON_CLOSE,关闭程序。(所有窗口和进程都会关闭)

    DISPOSE_ON_CLOSE,只关闭本窗口。

    HIDE_ON_CLOSE,只隐藏本窗口,不关闭。

    DO_NOTHING_ON_CLOSE,不做任何事,点击关闭无效。

     

    这很简单,只要调用dispose方法即可。隐藏是setVisible(false)。关闭程序是System.exit(0);

     

    frame.setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);

     if (evt.getKeyCode() == KeyEvent.VK_ESCAPE) {

                                frame.dispose();

                            //    System.exit(0);

                            }

     

     

    参考

    java怎么样通过按钮关闭一个JFrame_百度知道.htm

  • 相关阅读:
    linux & centos命令
    javascript总结
    SocanCode7之模板编写
    SocanCode连接Oracle的方法
    ashx的使用
    SocanCode代码生成器版本更新记录 [SocanCode7全新发布]
    IIS7.0中使用MVC3,静态页正常,其它404
    不用再纠结反射影响效率了
    ASP.NET MVC 框架处理请求生命周期
    create xmlhttprequest
  • 原文地址:https://www.cnblogs.com/attilax/p/15198961.html
Copyright © 2011-2022 走看看