Индексы в дереве значений 8.2 #476696


#0 by WayLander
Товарищи. Нету предлела моему возмущению относительно кривизны моих рук, по сему к вам обращаюсь за помощью и сочувствием. Происходит все в управляемом приложении. Есть у меня форма, у формы есть реквизит типа Дерево. Заполняю я его, нажав нужную кнопку и нарадоваться не могу. Все замечательно. Но, если я понажимаю нужную кнопку несколько раз, индексы у моего дерева не обновятся. Дерево очищаю и всячески обновляю, но индексы ни в какую. Копятся, заразы. То есть если у меня в дереве всего одна строка, то после трех нажатий у этой строки будет индекс 3. Как можно догадаться, это жутко бесит, хочется взять и настучать. Многоуважаемые. Поделитесь пожалуйста знаниями, что можно сделать в этом случае?
#1 by mrBlutig
Ничего. Используй ПолучитьИдентификатор, НайтиПоИдентификатору
#2 by WayLander
Хм. Дело в том, что я балуюсь с перетаскиванием. А в соответствующих процедурах/событиях есть параметр "Строка", - индекс строки, над которой повис мой перетаскиваемый объект. И держа курсор над первой строкой, я получаю не нулевой индекс, а полную лажу. Как по другом идентифицировать строку-приёмник, я не знаю.
#3 by WayLander
Может существует способ обнулить индексы тек.таблицы?
#4 by SilentMan
Индекс и идентификатор строки - абсолютно не одно и тоже. Правильный ответ в . Ничего обнулять не надо :)
#5 by Mort
Хоть в СП про почитал, перед тем как дальше задавать вопросы ?
#6 by WayLander
Конечно прочитал. Там написано:Но, как видимо, то, что я про перетаскивание написал, никого не волнует. Если кто знает, то все эти события с перетаскиванием возвращают мне исключительно индекс строки, над которой "висит" объект, а не саму строку. Поэтому совет про метод ПолучитьИдентификатор мне бесполезен. Либо я страшно туплю.
#7 by WayLander
И я готов не обнулять индексы. Мне на них наплевать. Мне главное получить нужную строку, над которой висит объект. Может благодарная публика все-таки подскажет решение, как в перетаскивании получить строку-приемник не по кривому индексу?
#8 by Mort
"Прочитал про ПолучитьИдентификатор" это конечно много, но ещё стоит потрудится и почитать про  НайтиПоИдентификатору.
#9 by WayLander
Хорошо. Я прочитал и про НайтиПоИдентификатору. Подскажите пожалуйста, как мне этими методами воспользоваться? А то у меня мозг рака, видимо.
#10 by Mort
В том порядке, в котором читал, в том и юзай. Получаешь идентификатор по индексу, по идентификатору ищешь ДанныеФормыЭлементКоллекции - которое то самое, строка дерева.
#11 by WayLander
"Получаешь идентификатор по индексу" - как это? Правильно ли я понимаю, что этот метод применим к конкретной строке?
#12 by Mort
да.
#13 by WayLander
Как же мне получить строку, если у меня индекс смещается, и любые попытки по кривому индексу получить эту треклятую строку заканчиваются епическим провалом?
#14 by WayLander
Что же? Дельных советов больше не будет?
#15 by Mort
Конечно будут: Пить и курить вредно. А по сабжу уже все разжевали.
#16 by WayLander
Да что разжевали? Посоветовали неприменимые в моей ситуации методы? Очень полезно. Ведь так и не присоветовали чего-то стоящего. И, видимо, теперь будет обыкновенное отмалчивание или банальное игнорирование.
#17 by kabanoff
Про 8.2, наверное, мало кто знает. А если знает, то общие случаи. У меня вопрос так и висит без ответа.
#18 by Mort
На форме есть дерево в виде коллекции это одно. Строчки выводимые на форму это другое, чтобы связать эти дела у каждой строчки на форме есть идентификатор, по которому можно найти элемент коллекции дерева (т.е. строку дерева). По тому числу которое приходит в параметрах получаешь идентификатор, по идентификатору находишь строку дерева. В чем вопрос?
#19 by WayLander
По ходу я совсем ничего не понимаю. Даже индексы обыкновенного списка значений после каждого обновления списка не обнуляются, а накапливаются. И, чтобы всё работало корректно, надо обработку каждый раз открывать по-новой.
#20 by WayLander
- не кипятись, объясни пожалуйста, как мне по числу получить идентификатор? Вот у меня есть на форме дерево, состоящее, включая подчинение, всего 10 строк. Я беру одну строку и пытаюсь перетащить в другую строку. Когда я отпускаю объект, у меня срабатывает процедура "Перетаскивание". В ней параметр "Строка" показывает 56. Что мне можно сделать с этой цифрой?
#21 by WayLander
ой. Циферкой ошибся. Вопрос к 18-му сообщению.
#22 by Mort
Гоню параметр это и есть походу идентификатор. Сорри.
#23 by WayLander
А. Многоуважаемый Морт. Видимо, мы друг друга никак не хотели понимать. Но, оказывается, вот этот вот параметр "строка" и есть идентификатор.
#24 by WayLander
А, ну вот и истина нашлась. Спасибо за подсказки.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям