Вход | Регистрация
 

Странное поведение таблицы на УФ

Странное поведение таблицы на УФ
Я
   Гений 1С
 
23.11.21 - 15:46
Почему-то текущая строка не появляется, пока я не спозиционирую на текущем элементе вручную.
После этого, когда я меняю состав строк (удаляю полностью и загружаю новые), строка позиционируется на первом элементе автоматом.
А до этого не позиционируется, просто ТекущаяСтрока = Неопределено.
Есть еще другие таблицы на форме, там все нормально, как только меняю состав строк, сразу меняется текущая строка, по крайней мере она сразу есть на первом элементе.
ЧЯДНТ и как вылечить?
   Beduin
 
1 - 23.11.21 - 15:50
Ты кодом заполняешь строки в этот момент?
   Beduin
 
2 - 23.11.21 - 15:53
Если что, текущая строка она не по порядку.
   pechkin
 
3 - 23.11.21 - 15:54
(2) речь не про порядок/индекс. А то что ни одна строка не выделена
   palpetrovich
 
4 - 23.11.21 - 15:55
(0) т.е. есть несколько таблиц на форме, у всех кроме одной все нормально?
и надо угадать что не так с той где не нормально?
   pechkin
 
5 - 23.11.21 - 15:55
гуру тест или просто спрашиваешь?
   acht
 
6 - 23.11.21 - 15:58
(0) Это бунт форм, геня. Они наконец-то поднялись против неконституционного навязывания им незаконной воли.

> как вылечить?
Вакцинироваться.
   Гений 1С
 
7 - 23.11.21 - 16:11
(5) не, просто спрашиваю. не могу понять в чем дело. В принципе затычкой можно спозиционировать на первый элемент, если текущая строка не определилась, но хочется понять, что не так с этой таблицей.
   Барбариска
 
8 - 23.11.21 - 16:35
(7)Элементы.ххх.Обновить();
   Kassern
 
9 - 23.11.21 - 16:37
(7) а потом ловить ошибку, если строк в таблице нет)
   Ненавижу 1С
 
10 - 23.11.21 - 18:47
(7) а ты вопросы игноришь специально? Описать ситуацию нормально с первого раза ты не в силах это понятно уже.
   Ёпрст
 
11 - 23.11.21 - 18:56
(0) я тебе даже больше скажу, в таком табличном поле, изменение состава при добавлении/удалении/отборе не приводит к событию ПриАктивизацииСтроки, а в другом, где есть курсорчик с текущей строкой - приводит
   VladZ
 
12 - 23.11.21 - 18:57
   Гений 1С
 
13 - 23.11.21 - 19:10
(10) а что непонятного-то?
   Гений 1С
 
14 - 23.11.21 - 19:10
(11) я очищаю таблицу и заново ее заполняю
   Ёпрст
 
15 - 23.11.21 - 19:14
+11 и текущиеДанные = неопределено там
   ДедМорроз
 
16 - 23.11.21 - 20:18
А что мешает установить текущую строку туда,куда нужно ?
   Ёпрст
 
17 - 23.11.21 - 20:18
(0) Ну шо, гуру-тест закончился ? Будешь пилить статью ?
или ответ сказать.. ?
   Ненавижу 1С
 
18 - 23.11.21 - 20:47
(14) новые вводные?
   hhhh
 
19 - 23.11.21 - 21:31
(14) ну ты же понимаешь, что текущаяСтрока - это идентификатор строки. А номер строки это вообще другое. И если чистишь таблицу, то номера строк и идентификаторы строк точно разные.
   Ёпрст
 
20 - 23.11.21 - 21:56
(19) речь не об этом. Тс спрашивает, почему в табличном поле при удалении всех строк и после добавления их программно, у него в одном случае, есть выделенная текущая строка(обычно, первая), а в другом случае нет, пока мышой туда не ткнешь.
Т.е вообще нет текущейстроки. Соответственно нет и текущиеДанные у элемента формы с этим табличным полем.
   Гений 1С
 
21 - 23.11.21 - 22:18
(20) да
   pechkin
 
22 - 23.11.21 - 22:19
Зависит от того активна ли таблица или нет?
   Гений 1С
 
23 - 23.11.21 - 22:24
(22) нет
   Ненавижу 1С
 
24 - 23.11.21 - 22:36
В одном случае идентификатор прежней текущей строки совпал с одним из новых, в другом нет.
   Ёпрст
 
25 - 23.11.21 - 22:51
(24) неа
   RomanYS
 
26 - 23.11.21 - 23:25
(24) они же уникальные должны быть в пределах времени жизни формы
   hhhh
 
27 - 24.11.21 - 01:35
(25) если он делает Таблица.Очистить(), то идентификатор не найдется, и текущая строка не будет выделена после очистки. Другое дело, если Г потом вручную в тексте программы устанавливает текущую строку.
   Ёпрст
 
28 - 24.11.21 - 09:33
(27) можно и не очищать ничего, просто повесить кнопку с отбором/снятием отбора. Эффект будет таким же.
   Ёпрст
 
29 - 24.11.21 - 12:29
Ну шо.. Статью запилил уже ?
:))

а так, см.(17).


Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.