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

  • 相关阅读:
    appium的python异常处理
    appium环境搭建
    什么是Capability
    移动端自动化测试-WTF Appium
    python-selenium,关于页面滑动
    接口测试的要点
    共享文件夹在本机桌面创建快捷方式
    hosts文件失效,配置的域名不能成功访问
    隔一段时间应用就会挂掉(进程在,但停止响应,也无log输出),必须重启tomcat
    在同步方法中调用异步方法时如何避免死锁问题
  • 原文地址:https://www.cnblogs.com/attilax/p/5963730.html
Copyright © 2011-2022 走看看