Форум: "Прочее";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];
ВнизСохранение TreeView в HTML-формате Найти похожие ветки
← →
Колдун © (2006-10-31 23:00) [0]Есть дерево (TreeView), стоит задача сохранить его содержимое в HTML-формате (в виде ненумерованного списка). Подскажите, пожалуйста, как это сделать.
← →
palva © (2006-10-31 23:07) [1]Написать рекурсивную процедуру с выводом в текстовый файл. Если потребуется сворачивать и разворачивать ветки дерева, то надо будет использовать небольшой JavaScript.
← →
Колдун © (2006-10-31 23:10) [2]Нет, сворачивать/разворачивать не надо. Могу ттакже заметить, что с идеей рекурсии вы отнюдь не первый (первый я :) ). Вопрос: как будет выглядеть эта самая рекурсия (хотя бы примерный алгоритм)?
← →
Sam Stone © (2006-10-31 23:17) [3]примерно так:
процедура ааа(узел)
начало
если узел!=нил
для и от 0 до узел.кол-во-1 бегин
засунуть в хтмл узел.итем[и]
ааа(узел.итем[и])
энд
конец
если где-то накосячил - я не виновал :)
← →
palva © (2006-10-31 23:18) [4]Как-нибудь так:
procedure vvv(узел)
begin
печать начала списка <OL>
foreach child of узел do begin
if child имеет дочерние then vvv(child)
else печать <LI>child.text</LI>
end
печать конца списка </OL>
end;
и обратиться к этой процедуре
v(корень)
← →
palva © (2006-10-31 23:19) [5]Sam Stone © (31.10.06 23:17) [3]
Продай телепатор
← →
Sam Stone © (2006-10-31 23:21) [6]> [5] palva © (31.10.06 23:19)
талант не пропьешь, не продашь )))
ЗЫ
> foreach child of узел do begin
не всякая дельфя скушает ))
← →
Колдун © (2006-10-31 23:22) [7]Как я понимаю, тип узла - TTreeNode?
← →
Sam Stone © (2006-10-31 23:24) [8]> [7] Колдун © (31.10.06 23:22)
угу. Он зависит только от компонента и какой там нод напридумали разработчики
← →
Колдун © (2006-10-31 23:25) [9]А во-вторых... Чем можно заменить ваш замечательный for each?
← →
Sam Stone © (2006-10-31 23:27) [10]> [9] Колдун © (31.10.06 23:25)
см. мой вариант ) у меня обычный фор ^_^
← →
Колдун © (2006-10-31 23:35) [11]Алгоритм некорректен - выскакивают лишние ОЛ"ы+не показывает начало списка
← →
Gero © (2006-10-31 23:37) [12]> [11] Колдун © (31.10.06 23:35)
Значит исправь, чтобы был корректен.
← →
Sam Stone © (2006-10-31 23:38) [13]> [11] Колдун © (31.10.06 23:35)
ну знаешь... тебе дали набросок. Бери напильник, обрабатывай.
← →
Колдун © (2006-10-31 23:40) [14]Напильником доработал... Понял, почему - впечатыватся только то, у чего НЕТ потомков. куда добавить строку впечатывания тех,у которых есть дети?
← →
Орион © (2006-10-31 23:41) [15]> [0] Колдун © (31.10.06 23:00)
Можно написать наследника TTreeView с методомSaveToFileHtml(AFileName: string);
← →
Sam Stone © (2006-10-31 23:43) [16]> [14] Колдун © (31.10.06 23:40)
добавить условие - если Node.HasChildren (или что-то подобное), то писать в хтмл.
> [15] Орион © (31.10.06 23:41)
тогда уж сразу взять готовый компонент )
← →
Колдун © (2006-10-31 23:47) [17]Ффсе. спасибо ОГРОМНОЕ всем. Я сделал! насчет написания метода подумаю=)))
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.054 c