![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| RA |
|
|||
![]() Брутальный буратина ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: 14 Всего: 115 |
Нужна мне была процедура сохранения и загрузки, Дерева TreeView.
юзанул я стандартные LoadToFile и LoadFromFile но они не сохраняют свойство data ветвей дерева и решил я их переделать вот что получилось:
Работает код криво и косо но работает, вообщем поможите оптимизировать или мож кто альтернативу предложит. |
|||
|
||||
| x77 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1255 Регистрация: 25.3.2002 Репутация: 19 Всего: 22 |
одна мыслишка есть. тебе в Data, насколько я понял, надо хранить всего лишь интегер. стоит ли ради этого заморачиваться с указателями вообще? его можно хранить, например, в свойстве TTreeNode.StateIndex, которое используется достаточно редко. и тогда вместо сохранения в файл нодов, можно смело писать и читать весь компонент со всеми его свойствами, в т.ч. и StateIndex'ами:
не совсем корректно, может быть, но ты сравни код ;) мне кажется, ради этого можно пожертвовать StateIndex'ами, даже если они используются. другой вариант: дописывать нужное число в текст нода (типа 'My node|1') и перехватывать вывод на экран: отображать только часть до символа "|". а при необходимости узнать число, брать всё, что после символа "|" и переводить в интегер. тогда сохранение и запись сведутся к стандартным методам SaveToFile/LoadFromFile, т.к. вся нужная инфа у тебя сидит в тексте нода. короче говоря, мне кажется, что париться с сохранением "пользовательских данных" ради одного вшивого целого не стоит вообще. -------------------- Я никогда не сопротивлялся искушению, поскольку узнал: что мне не нравится, то меня не искушает. © Джордж Бернард Шоу (Ирландия) |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |