如何检查鼠标是否被挤出JFrame

时间:2014-02-01 20:32:13

标签: java swing input jframe mouse-listeners

现在我正在使用MouseListener查看鼠标是否被按下但是当你按下JFrame外部时它没有注册我真的需要它,所以如何检查JFrame之外的鼠标事件? / p>

3 个答案:

答案 0 :(得分:3)

  

现在我正在使用MouseListener来查看鼠标是否被按下   但是当你在JFrame之外按下它时它不会注册   真的需要它,所以如何检查a之外的鼠标事件   的JFrame?

  • 然后JFrame丢失Focus,您可以使用WindowFocusListener

  • 进行测试
  • 焦点是异步的,然后windowGainedFocuswindowLostFocus内的所有内容都应该包含在invokeLater

答案 1 :(得分:0)

添加一个窗口监听器

addWindowListener(new WindowListener() {

        @Override
        public void windowOpened(WindowEvent arg0) {


        }

        @Override
        public void windowIconified(WindowEvent arg0) {


        }

        @Override
        public void windowDeiconified(WindowEvent arg0) {


        }

        @Override
        public void windowDeactivated(WindowEvent arg0) {


        }

        @Override
        public void windowClosing(WindowEvent arg0) {

        }

        @Override
        public void windowClosed(WindowEvent arg0) {

        }

        @Override
        public void windowActivated(WindowEvent arg0) {


        }
    });

尝试所有方法(窗口......),看看哪种方法最适合你! :) 我并没有告诉你到底要做什么,因为要知道你不能复制粘贴!

答案 2 :(得分:0)

要知道窗外鼠标的状态,您可以使用:

Point point = MouseInfo.getPointerInfo().getLocation();

不幸地java.awt.event.MouseMotionListener向您提供有关窗口内鼠标移动的信息。