|
УФ. Можно ли узнать номер видимой строки в таблице формы? | ☑ | ||
---|---|---|---|---|
0
psy_sln
30.10.20
✎
13:01
|
Здравствуйте,
возможно ли узнать позицию выделенной строки (не в данных объекта!), а в таблице формы? т.е. например у нас таблица из 100 строк, на форме мы видим строки с 20 по 40, выделена третья строка сверху (допустим ее индекс в таблице 23). Вот мне нужно получить номер 3 |
|||
1
Ёпрст
30.10.20
✎
13:04
|
(0) зачем ?просто получай текущую строку и всё.. вот не пофик ли, 3-я она сверху или 5-ая..
|
|||
2
psy_sln
30.10.20
✎
13:05
|
Если бы было пофик, не было бы этой темы
|
|||
3
Ёпрст
30.10.20
✎
13:08
|
(2) ну и скажи, зачем ?
|
|||
4
psy_sln
30.10.20
✎
13:10
|
Для синхроницазии действий, на форме 2 таблицы, и когда чтото выделяю в одной, мне нужно чтобы в другой нужная строка встала на ту же позицию, что и в первой
|
|||
5
Ёпрст
30.10.20
✎
13:12
|
(4) дык заведи ключ записи в обеих таблицах и приактивизации в первой ищи во второй по этому ключу
|
|||
6
Ёпрст
30.10.20
✎
13:12
|
какй нахрен еще..3-ий номер сверху..
|
|||
7
psy_sln
30.10.20
✎
13:14
|
да это есть, но мне нужно чтоб визуально строки были друг напротив друга
|
|||
8
Вафель
30.10.20
✎
13:14
|
так он наверное и скролить синхронно хочет
|
|||
9
Вафель
30.10.20
✎
13:15
|
такое только на хтмл возможно
|
|||
10
psy_sln
30.10.20
✎
13:17
|
(8) это в идеале, мне хотябы при выделении строки такое организовать
|
|||
11
Вафель
30.10.20
✎
13:20
|
так если у тебя строк больше, что при скроле должно быть, когда тек строка не меняется?
|
|||
12
psy_sln
30.10.20
✎
13:25
|
Строк в этих таблицах будет всегда одинаковое количество, к тому же на скрол нет событий, по этому пытаюсь что то придумать при выделении строки
|
|||
13
Ёпрст
30.10.20
✎
13:50
|
(12) то как ?
|
|||
14
Ёпрст
30.10.20
✎
13:51
|
На первой таблице у тебя 10 строк, мышой тыркаешь в 9-ую, во второй таблице сколько строк ? с чего там должна быть активна 9-ая ?
|
|||
15
УдавВПопугаях
30.10.20
✎
13:55
|
ну при активизации в одной таблице находишь нужную строку в другой и делаешь ее активной
|
|||
16
УдавВПопугаях
30.10.20
✎
13:56
|
если надо что бы всегда были друг напротив друга, то строк должно быть одинаковое количество + одинаковая сортировка
|
|||
17
psy_sln
30.10.20
✎
13:57
|
(15) Да, активной она становится, но мне нужно управлять размещением этой строки в отображаемой части таблицы
|
|||
18
УдавВПопугаях
30.10.20
✎
13:58
|
а скролл - только если не колесом, а как то по-другому список прокручивать, кнопкой например, и там уже отлавливать
|
|||
19
psy_sln
30.10.20
✎
13:59
|
(16) нет, ситуация, я прокрутил 5 экранов в низ и выделил самую нижнюю видимую строку, в другой таблице выделенная строка помещается в центр
|
|||
20
УдавВПопугаях
30.10.20
✎
14:00
|
(19) во второй таблице выделенная всегда должна быть в центре? или друг напротив друга должны быть не понял
|
|||
21
hhhh
30.10.20
✎
14:01
|
(19) сделай одну таблицу тогда. зачем вдруг понадобилось 2 таблицы?
|
|||
22
УдавВПопугаях
30.10.20
✎
14:02
|
может отбор поставить на вторую таблицу, тогда там будут только строки, которые имеют ключ из первой, если она всегда будет одна, то будет в начале списка
|
|||
23
psy_sln
30.10.20
✎
14:03
|
(20) друг на против друга
|
|||
24
УдавВПопугаях
30.10.20
✎
14:07
|
(23) во второй таблице она в центре, а в первой... тоже в центре? давай картинку, как есть и как хочется, со стрелками, непонятно
|
|||
25
psy_sln
30.10.20
✎
14:12
|
(24) Попробую без картинки, в первой таблице я выделяю строку (пусть будет вторая снизу), система в другой таблице находит эту строку и устанавливает на нее курсор, но курсор может быть расположен где угодно, а мне надо чтобы найденная строка во второй таблице была также второй снизу
|
|||
26
УдавВПопугаях
30.10.20
✎
14:17
|
ох ты ж епт, знает толк в извращениях
поставить фильтр на вторую таблицу не вариант? в ней не останется ничего, кроме подходящего по условию |
|||
27
УдавВПопугаях
30.10.20
✎
14:18
|
табличная часть.сдвинуть() есть
|
|||
28
УдавВПопугаях
30.10.20
✎
14:21
|
если количество строк одинаковое то
текданные1 = таб1.текущиеданные строкатаб2 = таб.найти(текданные1.ключ, "ключ") таб2.сдвинуть(строкатаб2, таб1.индекс(текданные1) - таб2.Индекс(строкатаб2)) это не точный код, считать и проверять надо, смысл где то такой |
|||
29
УдавВПопугаях
30.10.20
✎
14:22
|
а, ну и таб2.текущаястрока = строкатаб2
|
|||
30
УдавВПопугаях
30.10.20
✎
14:26
|
может еще табличноеполе.обновитьстроки() или аналогичное нужно будет сделать, если при сдвиге в тч табполе не отобразит
ну и я про обычные формы, в управляемых должно быть аналогично |
|||
31
SleepyHead
гуру
30.10.20
✎
14:28
|
(12) Нахрен две таблицы? Одна тогда нужна.
|
|||
32
УдавВПопугаях
30.10.20
✎
14:28
|
(31) ну видимо разные данные в таблицах
|
|||
33
psy_sln
30.10.20
✎
14:28
|
(29) Такой вариант, к сожалению, не подходит. У меня не табличная часть, да и двигать тут нельзя строки ибо смысл тогда теряется, наверно надо смотреть в сторону одной таблицы. Похоже что в платформе нет механизмов управления отображаемыми данными
|
|||
34
УдавВПопугаях
30.10.20
✎
14:29
|
(0) при этом разве обязательно строку перемещать напротив другой? может достаточно просто выделить нужную и все?
|
|||
35
УдавВПопугаях
30.10.20
✎
14:30
|
(33) в таблице значений тоже самое
|
|||
36
УдавВПопугаях
30.10.20
✎
14:32
|
(33) механизмы есть, но обычно это для извращений, чем проще механизм тем он надежней
|
|||
37
УдавВПопугаях
30.10.20
✎
14:38
|
че то странное
(17) "Да, активной она становится, но мне нужно управлять размещением этой строки в отображаемой части таблицы" и (33) "да и двигать тут нельзя строки ибо смысл тогда теряется, наверно надо смотреть в сторону одной таблицы. Похоже что в платформе нет механизмов управления отображаемыми данными" и не сходится где то |
|||
38
psy_sln
30.10.20
✎
14:42
|
(37) на сколько я понял метод сдвинуть физически переместит строку на нужную позицию, т.е. ее индекс изменится, а мне не нежно менять индекс, мне нужно чтобы система проскролила таблицу так, чтобы выделенная строка оказалась на нужной мне позиции.
|
|||
39
УдавВПопугаях
30.10.20
✎
14:49
|
ну активизируй нужную строку, она и проскролит
|
|||
40
УдавВПопугаях
30.10.20
✎
14:50
|
не факт что встанут друг напротив друга, даже факт что не встанут
|
|||
41
УдавВПопугаях
30.10.20
✎
14:52
|
что это за херня
|
|||
42
psy_sln
30.10.20
✎
14:54
|
(40) вот именно, что не факт, а мне надо ))))
|
|||
43
psy_sln
30.10.20
✎
14:54
|
но видимо это невозможно, я понял
|
|||
44
hhhh
30.10.20
✎
14:57
|
(43) просто делай одну таблицу из двух и выводи ее. Ведь всё равно это не табчасти, значит вообще без проблем.
|
|||
45
Мимохожий Однако
30.10.20
✎
14:59
|
И на хрена это? Если у двух таблиц одинаковые ключи поиска при одинаковом количестве строк, то логичнее сделать одну таблицу
|
|||
46
psy_sln
30.10.20
✎
15:03
|
(45) тут тема в визуальном представлении, в таблице отображается дерево, и если делать одну таблицу но с 2мя колонками, то дерево (визуально в виде дерева) будет только в одной колонке
|
|||
47
Cthulhu
30.10.20
✎
15:04
|
запомнил номер строки в первой - нашел во второй - активизировал во второй (стало по центру) - активизировал запомненный номер строки в первой (стало по центру) == обе синхронно по центру одна напротив другой...
визуально выглядит как тек.строка всегда посередине, а список движется. норм. |
|||
48
УдавВПопугаях
30.10.20
✎
15:07
|
(47) да хрен оно встанет по центру, она может быть с индексом 3 например, в самом верху
|
|||
49
УдавВПопугаях
30.10.20
✎
15:08
|
(43) все возможно
в этом случае надо двигать строки и будет ок |
|||
50
УдавВПопугаях
30.10.20
✎
15:09
|
либо отсортировать в обеих таблицах, тогда ваще все одинаковое будет
|
|||
51
hhhh
30.10.20
✎
15:14
|
(46) так значит у вас неодинаковое количество строк? Что же вы писали, что одинаковое?
|
|||
52
hhhh
30.10.20
✎
15:16
|
(46) тогда невозможно в принципе. Первая строка не прокатит. в первой таблице на первой строке иерархия, а во второй таблице иерархии нет, сразу идут элементы.
|
|||
53
Cthulhu
30.10.20
✎
15:21
|
(48) да вообще-то до лампады где, главное что рядом-напротив как надо автору. исключение - только конец списка если размер списков разный, но автор говорил вроде, что списки равной длины...
|
|||
54
hhhh
30.10.20
✎
15:24
|
(53) левый исписок иерархический, как оказалось.
|
|||
55
Cthulhu
30.10.20
✎
15:25
|
(54): еще раз. до лампочки. тек.строка по центру - сисок движется - найденная строка второго списка всегда рядом.
|
|||
56
psy_sln
30.10.20
✎
15:27
|
(55) да, вот вы меня правильно поняли, и да как я и говорил количество элементов в таблице одинаково. то что они иерархические это для дела не суть важно
|
|||
57
Ёпрст
30.10.20
✎
15:31
|
(55) врят ли в первой скрол сдвинет текущую строку посерёдке, если она и так текущая..лень проверять
|
|||
58
Ёпрст
30.10.20
✎
15:31
|
*не скрол а установка текущей..
|
|||
59
УдавВПопугаях
30.10.20
✎
15:37
|
(53) нуууу рядом это не напротив
|
|||
60
УдавВПопугаях
30.10.20
✎
15:40
|
а напротив они не встанут
|
|||
61
УдавВПопугаях
30.10.20
✎
15:40
|
только если отсортированы одинаково
|
|||
62
Cthulhu
30.10.20
✎
15:55
|
(57): есть такая вероятность, но если даже и так - установка тек.строкой другой потом обратно той же решает такую проблему (если! она возникнет)
(60),(61): блин, "Василий Иванович, иногда мне кажется, что вы бредите" (с) и рядом, и напротив в двух списках на форме, расположенных рядом и имеющих одинаковую высоту - одно и то же, и встанут. сортировки - до лампады, тек.строка второго будет рядо=напротив тек.строки первого. как нашли строку второго чтобы сделать ее текущей - дело семнассатое. |
|||
63
ДедМорроз
31.10.20
✎
13:54
|
Если в таблицах одинаковое число строк,то просто в одну таблицу.
Если разное,то не поставите вы третьей строку,если во второй таблице всего две строки. Как вариант,нарисуйте поля второй таблицы для текущей строки,а саму таблицу сделайте невидимой и меняйте в ней текущую строку,будет то,что нужно. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |