Я создал просмотрщик txt-файлов в Java, но есть одна функция, за которую я застрял уже некоторое время. Когда пользователь правой кнопкой мыши нажимает слово из текстового текста, он должен сохранять его в переменной. Кто-нибудь знает как? ThanksJava JTextArea get right clicked word
-2
A
ответ
0
JTextComponent.getCaretPosition - это то, что вы ищете; и работайте оттуда, чтобы найти слово. Или, может быть, getSelectedText, если требуется, чтобы слово было выбрано двойным щелчком.
0
Щелчок правой кнопкой мыши не меняет положение каретки, поэтому метод getCaretPosition() будет работать, только если каретка расположена на выбранном вами слове.
Для более общего подхода, вы можете использовать его в вашем MouseListener:
int offset = textArea.viewToModel(event.getPoint());
int start = Utilities.getWordStart(textArea, offset);
int end = Utilities.getWordEnd(textArea, offset);
String text = textArea.getText(start, end - start);