Изменить значение при нажатии мыши - PullRequest
0 голосов
/ 24 октября 2011

у меня JTextfield.Теперь я хочу изменить значение, когда в этом компоненте щелкают мышью.Например: оценка (2 больших JTextField), и когда я нажимаю на одно из этих полей, оно увеличивает значение с 0: 0 до 1: 0.

Должен ли я реализовать MouseListener или есть некоторые простыеКстати, как я могу это сделать?В слушателе мыши мне нужно переопределить только один метод mouseClick, а другой метод будет пустым.

И еще вопрос: когда мне следует реализовать MouseListener?e.getButton() вернуть всегда 1 для левой кнопки и 3 для правой кнопки?

Ответы [ 3 ]

2 голосов
/ 24 октября 2011
Now I want to change value when in this component is mouse clicked

JTextComponents являются Фокусируемыми, ищите FocusListener

2 голосов
/ 24 октября 2011

Должен ли я реализовать MouseListener или есть какой-то простой способ, как я могу это сделать?В мышином списке мне нужно переопределить только один метод mouseClick, а другой метод будет пустым.

Используйте MouseAdapter.

Абстрактный класс адаптера для получения событий мыши.Методы в этом классе пусты... Расширьте этот класс, чтобы создать MouseEvent (включая события перетаскивания и движения) или / и слушатель MouseWheelEvent и переопределить методы интересующих событий.

1 голос
/ 24 октября 2011

Реализация MouseListener в вашем классе - это один из способов сделать это, но если вы просто хотите реагировать на клики, проще использовать анонимный класс, расширяющий MouseAdapter

textField.addMouseListener(new MouseAdapter() {
    @Override
    public void mouseClicked(MouseEvent e) {
        // do your thing here
    }
});

Что касается второго вопроса, документация API довольно хорошо документирует возвращаемые значения MouseEvent.getButton().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...