Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 05.08.2011, 14:40
Terra Terra вне форума
Прохожий
 
Регистрация: 29.07.2011
Сообщения: 21
Репутация: 10
По умолчанию TreeView +инфа к узлам

Добрый день! У меня возникла проблемка с Treeview: дерево составила, элементы добавляются и удаляются, теперь хочу к узлам привязать дополнительную информацию (несколько фото и текст). Прочитала, что надо использовать Node.data. Поясните пожалуйста как и где это правильно сделать Дерево сохраняется и читается из txt файла.
Ответить с цитированием
  #2  
Старый 05.08.2011, 14:42
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Node.Data - это по сути своей указатель. Можно исользовать как число типа Integer (4 байта). Все зависит от того как у тебя организовано хранение доп. данных.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #3  
Старый 05.08.2011, 14:50
Terra Terra вне форума
Прохожий
 
Регистрация: 29.07.2011
Сообщения: 21
Репутация: 10
По умолчанию

Да я не знаю как лучше организовать их хранение. Думала для каждого узла своя папочка, а в ней и фото и txt файлы и если надо еще чего-нибудь.
Ответить с цитированием
  #4  
Старый 05.08.2011, 14:58
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Я бы в БД хранил.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #5  
Старый 05.08.2011, 15:02
Terra Terra вне форума
Прохожий
 
Регистрация: 29.07.2011
Сообщения: 21
Репутация: 10
По умолчанию

Хорошо, тогда в БД какого вида лучше это делать? Access отпадает, там фото лучше не хранить.
Ответить с цитированием
  #6  
Старый 05.08.2011, 15:04
Terra Terra вне форума
Прохожий
 
Регистрация: 29.07.2011
Сообщения: 21
Репутация: 10
По умолчанию

Да и в дереве у меня только 2 уровня
Ответить с цитированием
  #7  
Старый 05.08.2011, 15:08
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

А почему в акцесовской базе лучше не хранить фото? Если не секрет.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #8  
Старый 05.08.2011, 15:12
Terra Terra вне форума
Прохожий
 
Регистрация: 29.07.2011
Сообщения: 21
Репутация: 10
По умолчанию

объем большой, если хранить, то ссылки на фото. Тогда снова возникает вопрос иерархии папок для их хранения.
Ответить с цитированием
  #9  
Старый 05.08.2011, 16:00
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Можно любую другую БД использовать, хотя ацессовская вполне нормально тянет большой объем.
Можно организовать "БД" на диске. Тут надо пробумывать структуру хранения. Для обеспечения уникальности имен я бы использовал GUIDы
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #10  
Старый 05.08.2011, 17:06
Terra Terra вне форума
Прохожий
 
Регистрация: 29.07.2011
Сообщения: 21
Репутация: 10
По умолчанию

Допустим есть такая структура (храниться в txt):
Апельсины
сладкие
кислые
Яблоки
зеленые
спелые
Структура файлов для хранения инфы:
1_1. jpg -фото №1 для апельсин
1_2_1.jpg -фото №1 для апельсин сладких
2_1_2.jpg -фото №2 для яблок зеленых
2_2.jpg -фото №2 для яблок

Как привязать и где задать этот Node.data ????
Ответить с цитированием
  #11  
Старый 05.08.2011, 17:25
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Забавать Data нужно в методе AddObject
Следует создать объект который бы описывал требуемый функционал для хранения файла и привязать его к ноде. При окончании работы не забыть эти объекты грохнуть.
Если будет время вечерком напишу небольшую демку как это все делается.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #12  
Старый 06.08.2011, 00:47
Terra Terra вне форума
Прохожий
 
Регистрация: 29.07.2011
Сообщения: 21
Репутация: 10
По умолчанию

Может у кого есть ссылка, где реализовано что-то подобное? На примере проще разбираться.
Ответить с цитированием
  #13  
Старый 06.08.2011, 18:01
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

можно так, но в идеале текст и файл с картинкой должен быть в конструкторе класса
Вложения
Тип файла: zip tree.zip (51.3 Кбайт, 14 просмотров)

Последний раз редактировалось Pyro, 06.08.2011 в 18:06.
Ответить с цитированием
  #14  
Старый 07.08.2011, 03:03
Terra Terra вне форума
Прохожий
 
Регистрация: 29.07.2011
Сообщения: 21
Репутация: 10
По умолчанию

. Все лишнее из проекта убрала, оставила только 2 формы
Вложения
Тип файла: rar 153.rar (220.2 Кбайт, 19 просмотров)
Ответить с цитированием
  #15  
Старый 07.08.2011, 21:58
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Вот тут набросал кое-чего, не слишком оптимально и разумно, но как пример, надеюсь, пойдёт.
prg1.rar (104.1 Кбайт)
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.

Последний раз редактировалось angvelem, 12.11.2011 в 00:16.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 05:15.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025