2012-06-15 13 views
2

У меня есть JTextArea, где строки выделены щелчком правой кнопки мыши. Хотя я мог бы достичь этого(), однако мне также хотелось бы иметь какую-то функцию переключения, т. Е. Если строка не подсвечена, щелкните ее правой кнопкой мыши и наоборот.Переключая основные моменты в JTextArea

С этой целью можно проверить, выделена ли выделенная линия или нет? Комментарии/Предложения?

Я понимаю, что один из способов сделать это - отслеживать все основные моменты (возможно, используя HashMap as shown in the example here), но это немного добавит сложности, потому что я пишу этот метод в вспомогательном классе, который служит для множественного вкладки, содержащие эти текстовые области. Любое другое альтернативное решение было бы очень полезно (как в переключая основные моменты)

ответ

3

Я думаю, что у вас есть правильный ответ there in the link you provided.

Просто напишите свой собственный класс, расширяя JTextArea, где каждый экземпляр будет отвечать за сохранение его основных моментов, а затем вместо этого использовать свой собственный класс.

BTW @nIcE cOw отличный ответ (+1 там).

2

SWT имеет StyledText класс.

Вы можете написать класс стиля для Swing, реализующий интерфейс Document, который отслеживает основные моменты и любые другие текстовые декорации, которые вы хотите отслеживать. Этот класс будет инкапсулировать методы, которые определяют декорации в заданной позиции символа в стилизованном тексте.

Смежные вопросы