![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Dec 2008
Сообщений: 17
|
Каким образом можно переместить каретку в TextArea, чтобы она находилась под курсором мыши, когда указатель находится над какой-то частью введённого текста.
Др.словами нужно сделать то же самое, что происходит при клике на тексте левой кнопкой мыши, только программно. |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
У TextField'а свойство caretIndex только для чтения.
|
|
|||||
|
Регистрация: Dec 2008
Сообщений: 17
|
Немного непонятен Ваш ответ.
Есть компонент TextArea. В нём есть текст, допустим из 20 символов. Если мне нужно переместить каретку на, скажем 10-й символ, я это сделаю таким вот нехитрым способом: myTextArea.setSelection(10, 10). Нужно сделать то же самое, только позиция символа должна соответствовать положению курсора мыши над текстом, например курсор может быть над 15-м символом или за пределами текста, тогда нужно каретку поставить в конец текста. |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Аа.. ну да, не подумал о там способе.
Воспользуйтесь методом getCharIndexAtPoint() TextField'a. У TextArea его нету правда, так что надо будет ссылку на текстовое поле TextArea получить. upd: У TextArea textField свойство есть как раз. Последний раз редактировалось udaaff; 01.09.2009 в 16:28. |
|
|||||
|
Регистрация: Dec 2008
Сообщений: 17
|
Методом перебора выяснилось, что у TextArea компонент TextField лежит под индексом 2. Ссылку на него получил так:
Всё работает. Беспокоит только одно. Может есть какой-либо другой способ получить ссылку на TextField компонента TextArea не используя метод getChildAt()? |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Цитата:
|
|
|||||
|
Регистрация: Dec 2008
Сообщений: 17
|
Да, похожее свойство действительно есть. Спасибо.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 11:43. |
|
|
« Предыдущая тема | Следующая тема » |
|
|