|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.02.2012, 00:51 | #1 |
Пользователь
Регистрация: 15.01.2012
Сообщений: 67
|
Работа с указателями
Делаю поиск по TreeView заданного узла.
Вот такой: Код:
Насколько я понимаю указатели, node := pointer(TreeView.TopItem) и т.п. дадут мне ссылку на нужную ноду дерева, к данным которой я смогу обратиться через node^. Значит, временный указатель data надо присваивать как data := node^.Data. И даже присвоение происходит - там появляется адрес. Но, когда по указателю иду в data^.Code, то там инаксессибль валъю. А залезши по указателю, например, в node^.Text, получаю "'SV‹ò‹Ø‹C'#4'è¾'#$B#0#0'€{$'#0#$F' …'#0#0#0'‹Æ‹'#$15'xÎC'#0'è‹'#$18'ü ÿ„Àt‹V'#8'‹Ãèuðÿÿ‹V'#$C'‹Ãèÿðÿÿ‹V' #$14'‹Ãè•òÿÿ‹V'#$18'‹Ãèãòÿÿ‹V ‹Ãèóÿÿ‹V'#$1C'‹Ãè'óÿÿ‹ÆèT÷ÿÿ‹Ð‹Ãè+ ÷ÿÿ‹Æè”öÿÿ‹Ð‹Ãè“öÿÿ‹Æè\öÿÿ‹Ð‹Ãè[öÿÿ‹ÆèÄöÿÿ‹Ð‹Ãè#÷ÿÿ^[Ë֋Ã.................и.т.д.". То есть, явно указатель куда-то не туда. ЧЯДНТ? Последний раз редактировалось yaapelsinko; 15.02.2012 в 01:01. |
15.02.2012, 00:56 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
А зачем так? Что мешает работать с Node как с TTreeNode без заморочек?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
15.02.2012, 01:10 | #3 |
Пользователь
Регистрация: 15.01.2012
Сообщений: 67
|
Да это я с аксес виолейшынами воевал, как обычно. Это вот последний вариант алгоритма, просто решил сразу менять и обход, и способ доступа к переменным, чтобы точно нчего лишнего не создавать, нигде ничё не оставалось чтоб.
Ну вот, поменял ^TreeNode на TreeNode - теперь ищет и кажет. А ещё у меня дерево с динамической подгрузкой данных ветки при её развороте, йоу. \m m/ Но блин так же тоже должно работать? |
15.02.2012, 01:13 | #4 |
Пользователь
Регистрация: 15.01.2012
Сообщений: 67
|
Да, кстати, а вот условие выхода из цикла - он выполнится вообще? Когда дойду до последнего сиблинга, то некстсиблинг будет нил, или первый?
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с указателями | stas135642 | Общие вопросы C/C++ | 2 | 21.11.2010 15:05 |
Работа с указателями. | Alex Cones | Общие вопросы Delphi | 8 | 06.07.2010 18:34 |
Работа с указателями | Masip | Общие вопросы Delphi | 2 | 12.06.2010 12:49 |
Работа с указателями (C) | pixel_ | Помощь студентам | 1 | 28.08.2009 14:07 |
Работа с указателями | Mango | Помощь студентам | 2 | 23.11.2008 10:33 |