Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.05.22;
Скачать: CL | DM;

Вниз

Вопрос знатокам HTML   Найти похожие ветки 

 
aka   (2011-02-08 10:13) [0]

Вот строю дерево в TreeView

PFile = ^TFile;
TFile = record
 attr: Integer;
 name: WideString;
 fullpath: WideString;
end;

var
 MainF: TMainF;

implementation

{$R *.dfm}

procedure ScanDir(Dir: string; PerNode: TTreeNode);
var
 SearchRec: TSearchRec;
 Node: TTreeNode;
 Files: PFile;
begin
 if Dir <> "" then if Dir[length(Dir)] <> "\" then Dir := Dir + "\";

 if FindFirst(Dir + "*.*", faAnyFile, SearchRec) = 0 then
   repeat
     if (SearchRec.name = ".") or (SearchRec.name = "..") then continue;

     New(Files);
     Files^.attr := SearchRec.attr;
     Files^.name := SearchRec.name;
     Files^.fullpath := Dir + SearchRec.name;

     if (SearchRec.Attr and faDirectory) <> 0 then
     begin
       Node := MainF.TreeView.Items.AddChild(PerNode,SearchRec.name);
       Node.Data := Pointer(Files);
       ScanDir(Dir + SearchRec.name, Node);
     end
     else begin
       Node := MainF.TreeView.Items.AddChild(PerNode,SearchRec.name);
       Node.Data := Pointer(Files);
     end;
     
   until FindNext(SearchRec) <> 0;
 FindClose(SearchRec);
end;

procedure TMainF.Button1Click(Sender: TObject);
begin
ScanDir("Z:", nil);
end;


Как бы его оформить в виде HTML кода меню с выпадающими подменю следующего Level?


 
И. Павел ©   (2011-02-08 10:22) [1]

Вот примерчик: http://habrahabr.ru/blogs/css/55753/
А так есть и другие: http://www.google.ru/#hl=ru&source=hp&biw=1280&bih=812&q=html+%D0%B4%D0%B5%D1%80%D0%B5%D0%B2%D0%BE&aq=0&aqi=g1&aql=&oq=HTML+%D0%B4%D0%B5%D1%80%D0%B5&fp=b9369cba5b6f7f22


 
aka   (2011-02-08 13:58) [2]

Да с плюсами, как тривью в виде html я сделаю без проблем для это достаточно пробежаться циклом во всем Items и в зависимости от Level двигать правей следующий уровень, они то и расположены в тривью с верху -> вниз в нужном порядке
А вот подобно строке меню как в виндовых окнах с подменю, это конечно нужно подумать как это свормировать(строка меню это Level=0)


 
И. Павел ©   (2011-02-08 14:19) [3]

> Да с плюсами, как тривью в виде html я сделаю без проблем

А чем "с плюсами"  отличается от выпадающего меню? Нажимаете на плюс - выпадает подменю (в первом примере это делает css). Не хотите "плюс" - сделайте ссылкой все строки TreeView. Суть все равно одна. Или же вам нужно что-то другое?


 
aka   (2011-02-09 17:50) [4]

пример
<UL>
<LI> Кpупные гоpода России
<UL>
<LI> Москва
<LI> Санкт-Петеpбуpг
</UL>
<LI> Кpупные гоpода Укpаины
<UL>
<LI> Киев
<LI> Хаpьков
</UL>
</UL>

Не совсем получается из примера, который я писал в вопросе, сформировать рекурсивно список из примера.



Страницы: 1 вся ветка

Текущий архив: 2011.05.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
15-1297086003
oldman
2011-02-07 16:40
2011.05.22
Для тех кто хочет знать, какого пола их компьютер


2-1297425235
RUu
2011-02-11 14:53
2011.05.22
seek, locate


15-1296930362
Tonick2001
2011-02-05 21:26
2011.05.22
Передача данных


15-1297200575
Юрий
2011-02-09 00:29
2011.05.22
С днем рождения ! 9 февраля 2011 среда


2-1297514636
Женя
2011-02-12 15:43
2011.05.22
Рисунки