После удаления узла его IDIndex не освождается - так и задумано
Этот топик читают: Гость
Ответов: 356
Рейтинг: 31
|
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
откуда не освобождается?
|
|||
карма: 27 |
|
Ответов: 356
Рейтинг: 31
|
|||
Создаём узел
IDIndex = [ 1 ] CaptionIndex = [ "New" ] удаляем его и создаём новый IDIndex = [ 2 ] CaptionIndex = [ "New" ] и т.д. - IDIndex удалённых узлов больше не используется. code_16976.txt |
|||
карма: 0 |
| ||
файлы: 1 | code_16976.txt [5.6KB] [210] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
да, все верно. Поведение эквивалентно последовательностям(sequence) в терминах баз данных и это дает 100% гарантию от повторения идентификаторов вводимых записей
|
|||
карма: 27 |
| ||
Голосовали: | olDjeka |
Ответов: 356
Рейтинг: 31
|
|||
На случай хотелось бы знать, при UseHashMap = False используется TreeMap
Что нужно (или наоборот, не следует) делать при использовании hash-карты, чтобы добавляемые в дерево узлы шли в строго отсортированном по их ID порядке и к чему приведёт не соблюдение этого условия ? |
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
при UseHashMap = False используется двоичный поиск по отсортированному массиву.
нужно всего лишь соблюдать простое правило: ID добавляемого элемента должно быть больше любого уже добавленного. В случае со строками ID должно быть последним по алфавиту. не соблюдение условий сортировки приведет к тому, что при использовании метода поиска картежа в дереве по его ID алгоритм может пропустить часть узлов. PS: если узлов в дереве не так много(около сотни) и не требуется их слишком часто изменять, то использование HashMap не даст никакого повышения производительности. |
|||
карма: 27 |
| ||
Голосовали: | olDjeka |
Ответов: 2271
Рейтинг: 677
|
|||
Можно поподробней объяснить для чего свойства DataEmpty: Numeric, String. Хотел вписать (-1), не получилось. Пример: code_17562.txt
|
|||
карма: 11 |
| ||
файлы: 1 | code_17562.txt [1.5KB] [304] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
карма: 27 |
| ||
файлы: 1 | code_17564.txt [1.5KB] [280] | ||
Голосовали: | sla8a |
Ответов: 758
Рейтинг: 112
|
|||
Не хочу создавать новой темы, поэтому спрошу тут
Возможно ли увеличить скорость загрузки TreeViewTrain из StrList Скорость загрузки из файла несоизмеримо выше |
|||
карма: 1 |
| ||
файлы: 1 | project6.sha [43.5KB] [237] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
возможно сделать метод, который будет загружать дерево из текстовой строки такого же формата, которая требуется для метода doLoad. И сохранение.
|
|||
карма: 27 |
|
Ответов: 758
Рейтинг: 112
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Dilma писал(а): возможно сделать метод, который будет загружать дерево из текстовой строки такого же формата, которая требуется для метода doLoad. И сохранение.Это для меня фигура висшего пилотажа, не дорос пока Исходная структура дерева была такого вида
И потом я конвертил эту структуру в строчную, для добавления в дерево Может проще сделать обратный конвертор TVT_ItemPath |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
miver, быстродействие метода doLoad в свавнении с ручным doAdd достигается благодаря тому, что не нужно искать родителя для каждого нового узла. Никакими уловками в схеме это не компенсируешь
|
|||
карма: 27 |
|
Ответов: 2271
Рейтинг: 677
|
|||
1. В TreeViewTrain есть onExpand, а onCollaps?
2. И почему onExpand выдает значение только после первого doExpend? Пример: code_17719.txt |
|||
карма: 11 |
| ||
файлы: 1 | code_17719.txt [1.2KB] [302] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
2. onExpand вызывается после использования doExpand только в том случае, если ветка до того ни разу не была открыта. Это поведение зависит не от элемента пакета
|
|||
карма: 27 |
|
Ответов: 2271
Рейтинг: 677
|
|||
Хочется знать значения родительских узлов (раскрыт/свернут)? Можно это реализовать? Или иметь возможность отслеживать когда узел был раскрыт или свернут.
|
|||
карма: 11 |
|