|
Прокрутка формы без изменения текущего элемента |
☑ |
0
xavchik
27.08.19
✎
20:30
|
Всем привет.
Делаю чат. Все как обычно: сверху сообщения, снизу поле для составления исходящего сообщения и кнопка "Отправить".
Если пользователь пишет сообщение и в этот момент ему приходит новое входящее, то оно добавляется на страницу сверху. Страница с прокруткой. Надо сделать эту прокрутку, чтобы сообщение стало видно сразу. Если делать через ТекущийЭлемент = ..., то страница прокручивается, но фокус с поля ввода нового сообщения уходит. Что плохо...
Как можно программно прокрутить элемент управления с прокруткой или настроить его, чтобы он всегда показывал послежние элементы?
|
|
1
ДенисЧ
27.08.19
✎
21:03
|
А вернуть фокус на поле ввода - Мелькор запрещает?
|
|
2
xavchik
28.08.19
✎
14:45
|
(1) Никто не запрещает. Сделать можно, но не работает. Получение новых сообщений происходит через ПодключитьОбработчикОжидания. Если в рамках одного вызова я устанавливаю ТекущийЭлемент на последнее сообщение, а потом в том же вызове устанавливаю обратно, то ничего не происходит. Прокрутка на последнее сообщение не выполняется. Надо делать в двух разных вызовах, а это уже криво
|
|
3
xavchik
29.08.19
✎
11:16
|
Есть еще идеи?
|
|
4
Ёпрст
гуру
29.08.19
✎
11:18
|
(2) ну из первого обработчика запускай второй, который установит фокус, второй после установки фокуса тормози
|
|
5
xavchik
29.08.19
✎
12:03
|
(1) (2) В общем, передача фокуса с последнего сообщения и обратно на поле ввода нового сообщения работает нормально. В (2) написал неправду - просто была ошибка в коде.
Всем спасибо!
|
|