| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > проблема при добавлении ноды в VirtualStringTree |
| Автор: bistropoke 26.10.2011, 20:03 | ||||
| подскажите в чем может быть ошибка? заполняю VST данными из базы в самом начале я заполняю VST нодами нулевого уровня.
далее хочу добавить ноды второго уровня
но нода добавляется в корень. при этом поиск ноды по условию parent потомка = id родителя успешен. и нода выделяется. но добавление происходит не как потомок у выделеной ноды а как новая корневая нода. |
| Автор: MetalFan 26.10.2011, 21:41 |
А что делает эта проверка? И зачем такой изврат с визуальной частью? в плане сброса/установки выделения, передачи фокуса дереву, затем добавление ребенка FocusedNode, который скорее всего так и остался nil. |
| Автор: MetalFan 26.10.2011, 22:43 | ||||
выкинуть
заменить
|
| Автор: bistropoke 26.10.2011, 23:36 | ||
| спасибо переделал заполнение чайлдов в вид
сейчас работает хорошо. возник сразу второй вопрос. уже алгоритмический. каким способом лучше заполнять VST из базы? 1. по уровням как делаю я ? 2. рекурсивно через запросы по полю parent ? в первом случае минимизируются запросы к базе, но для каждой ноды выполняется проход по всему дереву в поиске ее родителя во втором больше запросов к базе но дерево строиться без дополнительных проходов. |
| Автор: MetalFan 27.10.2011, 09:35 |
хм, ну базы для того и были сделаны, чтобы хранить данные и быстро выполнять по ним запросы... |