![]() |
![]() |
|
УФ горизонтальная полоса прокрутки у таб. части Мультук, Ёпрст, pasha_d, DimR_71, CaIIIka, Масянька, Prog_man, youalex, 2S, Kongo2019, I_learn_1c, Крэкпэк, Ager, okmail, Kigo_Kigo, yurikmellon2, elka302, maxar, zzz_zzz_zzz, ptiz, Волшебник, Ненавижу 1С, Fish, Чеширский, DemonShinji2, VaganovSP, TormozIT, runuts, dva1c, who respawn
| ☑ | ||
---|---|---|---|---|
0
I_learn_1c
01.07.25
✎
16:07
|
Доброго всем дня,
Вопрос такой - есть таб. часть на форме документа, в таб. части много колонок, некоторые из них нужно менять руками иногда, но они не помещаются на экране. Приходится использовать горизонтальную полосу прокрутки. Для удобства нужно, чтобы после изменения значения в ячейке фокус оставался на ней же и полоса прокрутки тоже в том же положении. Стандартно фокус остается на строке и полоса прокрутки устанавливается на начало таб. части и приходится снова ее двигать Установку фокуса на нужную ячейку дописала, устанавливается, ячейка выделена, но она за пределами экрана.. вот как сделать, чтобы полоса прокрутки не соскакивала обратно на начальное положение? |
|||
1
I_learn_1c
01.07.25
✎
17:02
|
или может есть способ программно задать положение полосы прокрутки..
|
|||
2
I_learn_1c
01.07.25
✎
17:16
|
или может есть способ чтобы после изменения значения в ячейке ТЧ отменить обновление элементов формы, чтобы фокус с ячейки и положение горизонтальной полосы прокрутки не слетали
|
|||
3
I_learn_1c
02.07.25
✎
23:39
|
методом перебора вариантов установлено, что
если у поля (колонки) задан обработчик ПриИзменении, то после редактирования значения в ячейке (именно если ввели значение отличное от того что было), то происходит будто бы обновление элементов и полоса прокрутки перепрыгивает на начало, фокус остается на нужной колонке, но она не видна. НО! если при редактировании ввели то же самое значение/число, то полоса прокрутки не меняется, все остается в том же положении, как мне и нужно и также, если обработчик ПриИзменении не задан (убрала у того же самого поля), то независимо от того какое значение вводим при редактировании ячейки все работает корректно, полоса прокрутки не меняется, все остается в том же положении куда копать? какое событие реагирует именно на то, что ввели значение отличное от предыдущего? |
|||
4
I_learn_1c
02.07.25
✎
23:50
|
пробовала написать
&НаКлиенте Процедура ТоварыПриИзменении(Элемент) ЭтаФорма.ОбновитьОтображениеДанных(); ЭтаФорма.ТекущийЭлемент = Элементы.Найти(Элемент.ТекущийЭлемент.Имя); КонецПроцедуры событие ТоварыПриИзменении для таблицы вызывается после обработчика ПриИзменении для ячейки, выделение на нужной ячейке устанавливается, но она за пределами экрана.. ну если задан обработчик у ячейки или ввели значение отличное от предыдущего |
|||
5
Asmody
03.07.25
✎
00:04
|
(3) А вы ещё попробуйте в тонком, в толстом и в веб-клиенте (в разных браузерах) поиграть. И в разных версиях платформы. Подозреваю, что нора гораздо глубже.
|
|||
6
I_learn_1c
03.07.25
✎
00:09
|
(5) это все можно конечно... но делать то что? явно есть же какой-то механизм за это отвечающий. не могу найти только как именно это работает. может есть мысли конкретные?
|
|||
7
I_learn_1c
03.07.25
✎
00:12
|
получается работает как надо в 2 вариантах
1) если не задан обработчик ПриИзменении для ячейки (вводить можем что угодно) или 2) если при редактировании ячейки вводить ровно то же самое значение, что и было ранее (если обработчик задан, если обработчика нет, то вводить можем что угодно) |
|||
8
Мультук
гуру
03.07.25
✎
08:38
|
(0)
>>есть таб. часть на форме документа, в таб. части много >>колонок, некоторые из них нужно менять руками иногда, но >>они не помещаются на экране. 1) Возьмем ЗаказКлиента Для одних пользователей часть колонок вообще никогда не нужна, просто захламляет экран Для других -- не важна другая часть колонок Третьи сами скрыли ненужные колонки, важные колонки перетащили ближе к левому краю у них всё важно - всегда под рукой 2) Даже если вы найдете работающий "лайфхак" вероятность, что он будет работать и дальше -- "ну такое" Итого -- может попробовать вместо задачи программиста, решить задачу UI-дизайнера или как его там ? |
|||
9
I_learn_1c
03.07.25
✎
09:44
|
(8) не прокатит
именно тут пользователю эти колонки нужны все. кому нет - у них и так скрыто. но те, кому нужно - их бесит, что они редактируют и перескакивает вечно на начало, просят это исправить. и вместо решения предлагаете сказать "нет, вам это не надо"? другой вопрос если технически нет возможности |
|||
10
Ёпрст
гуру
03.07.25
✎
10:03
|
(9) переходите на обычные формы - там такой проблемы нет от слова совсем
|
|||
11
Ёпрст
гуру
03.07.25
✎
10:08
|
И.. посмотрел в типовой рознице, такой проблемы тоже нет на УФ.
Ничего там не "слетает",ПриИзминении есть и срабатывает как надо |
|||
12
Ёпрст
гуру
03.07.25
✎
10:10
|
Такси, формы в "закладках"
|
|||
13
Ёпрст
гуру
03.07.25
✎
10:12
|
>>>если обработчик ПриИзменении не задан (убрала у того же >>>самого поля), то независимо от того какое значение вводим >>>при редактировании ячейки все работает корректно Вот и ищите проблему в нём. В типовой, работает без "слёта" |
|||
14
Мультук
гуру
03.07.25
✎
10:17
|
(0)
1С:Предприятие 8.3 (8.3.25.1546) Файловая база, УФ Управление торговлей, редакция 11 (11.5.11.56) ( http://v8.1c.ru/trade/ ) Для колонки "Цена" есть типовой обработчик &НаКлиенте Процедура ТоварыЦенаПриИзменении(Элемент) //Всякий пересчёт КонецПроцедуры Открыл документ (см рис) -- есть прокрутка -- меняю цену на другую Ничего "само" не скроллится, фокус никуда не уходит. Всё хорошо. Я что-то не так делаю ? P.S. Снимать видео мне лень.
|
|||
15
Ёпрст
гуру
03.07.25
✎
10:54
|
(14) ага, так и есть..тоже, выше проверил.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |