繁体   English   中英

如何在JAVA中处理Windows XP或VISTA事件

[英]How to handle Windows XP or VISTA Events in JAVA

我想问另一个问题,如何用Java处理Windows事件。 具体来说,我想知道如何处理Windows XP和Vista中的事件,例如鼠标移动或鼠标单击。 我想将自己在应用程序中的自定义行为与这些事件相关联,即使我的应用程序处于非活动状态或其他隐藏状态也是如此。

感谢所有帮助!

您可以通过调用将例如MouseListener添加到任何JComponent

addMouseListener()

您可以使用不同的EventListeners代替MouseListeners

  • 侦听器
  • WindowListener
  • ComponentListener
  • 容器侦听器
  • FocusListener
  • ...还有很多

在这里查看详细说明

您可以完全实现MouseListener接口,也可以只使用便捷类MouseAdapter,该类具有方法存根,因此您不必实现每个方法。

检查此样本:

public class MyFrame extends JFrame {
    private MouseListener myMouseListener;

        public MyFrame() {
            this.setSize(300, 200);
            this.setLocationRelativeTo(null);
            // create the MouseListener...
            myMouseListener = new MouseAdapter() {
                @Override
                public void mouseClicked(MouseEvent e) {
                    System.out.println("clicked button " + e.getButton() + " on " + e.getX() + "x" + e.getY()); // this gets called when the mouse is clicked.
                }
            };
            // register the MouseListener with this JFrame
            this.addMouseListener(myMouseListener);
        }

        public static void main(String[] args) {
            SwingUtilities.invokeLater(new Runnable() {
                @Override
                public void run() {
                    MyFrame frame=new MyFrame();
                    frame.setVisible(true);
                }
            });
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM