![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Помогите пожалуйста разобраться с менюхами.
Есть ini файл приблизительно такого содержания: group=Группа 1 пункт1=файл1 пункт2=файл2 пункт3=файл3 group2=Группа2 пункт4=файл4 пункт5=файл5 и т.д. Т.е. заголовок группы должно быть меню со стрелкой, а там должны быть списки с пунктами при выборе которых возвращается нужное значение. Пока вот что написал, но че делать дальше не представляю - при создании сабменю какие-то ошибки выходят и не понятно как вытащить данные о выборе... Код:
Procedure TfmMain.InitChipMenu(); var i,posit,len:integer; str,str2:string; begin OOptions := TStringList.create; OOptions.LoadFromFile(ExtractFilePath(Application.ExeName)+'options.cfg'); for i:= 0 to OOptions.Count - 1 do begin str := OOptions.Strings [i] ; if pos(';',str)=0 then begin len := Length(str); posit := pos('GROUP=',str); if posit > 0 then begin str2 :=copy(str,7,len-posit); chip1.Add(NewItem(str2,0,False,True,MenuItem1Click,0,'MenuItem1')); //chip1.Add(NewSubMenu(str2,0,str2,ai,true)); end; end; end; end; Найденные примеры в сети и на этом сайте ограничиваются стандартным набором. Тут набор пунктов заранее может быть не известным. |