|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Динамическое заполнение MainMenu
Доброе время суток, уважаемы форумчане. Возникла необходимость заполнить главное меню найденными директориями с их субдиректориями. Директорий будет немного. Непонятным чудом пришёл к такому коду(сильно не пинайте)
Код:
procedure SearchDirectory(MainMenu: TMainMenu; I: Int32; Directory: String); var MenuItem: TMenuItem; SearchRec: TSearchRec; begin if FindFirst(Directory + '*.*', faDirectory, SearchRec) = 0 then Repeat if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') and ((SearchRec.Attr and faDirectory) = faDirectory) then begin MenuItem:=TMenuItem.Create(MainMenu); MenuItem.Caption:=SearchRec.Name; MainMenu.Items[i].Add(MenuItem); SearchDirectory(MainMenu, I + 1, Directory + SearchRec.Name + '\'); end; Until FindNext(SearchRec) <> 0; FindClose(SearchRec); end; Код:
SearchDirectory(MainMenu, 0, ''); Наставьте неуча на путь истинный. Как правильно сделать рекурсию, что бы подпункты MainMenu тоже заполнялись? |