Как обрабатывать события Windows XP или VISTA в JAVA - PullRequest
1 голос
/ 18 июня 2010

Я хотел бы задать еще один вопрос, как обрабатывать события Windows в Java.Чтобы быть точным, я хотел бы знать, как обрабатывать такие события, как перемещение мыши или нажатие мыши в Windows XP и Vista.Я хочу связать свое собственное поведение в приложении с этими событиями, даже если мое приложение неактивно или иным образом скрыто.

Вся помощь приветствуется!

1 Ответ

1 голос
/ 18 июня 2010

Вы можете добавить, например, MouseListener к любому JComponent, вызвав

addMouseListener()

Существуют различные EventListener, которые вы можете использовать вместо MouseListener

  • KeyListener
  • WindowListener
  • ComponentListener
  • ContainerListener
  • FocusListener
  • ... и многие другие

Check здесь для подробного объяснения

вы можете полностью реализовать интерфейс 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);
                }
            });
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...