Вниз
Скачать: CL | DM;

Проблема с меню!!   Найти похожие ветки 

← →
Gennadiy ©   (2004-07-26 13:16) [0]

Уважаемые мастера!!!
Как можно напрямую обратиться к TMenuItems чтобы создать в нем подменю, мне нужен что то вроде поиска Itemsа по имени, чтобы не использовать такую конструкцию MainMenu1.Items[0].Items[0].Add(), так как мне неизвестна глубина Итемсов???


← →
Ega23 ©   (2004-07-26 13:18) [1]

MainMenu1.Items.Count
MainMenu1.Items[i].Name

В чём проблема-то?


← →
Palladin ©   (2004-07-26 13:33) [2]

парень просто не знает понятие рекурсии, то бишь теоретически не подготовлен, к подобным задачам, хотя берется их решать...



Function FindMenuItem(Const p_strName:String; p_oMenu:TMenu):TMenuItem;
Var
I:integer;

Function FindInSubMenus(p_oMenuItem:TMenuItem):TMenuItem;
Var
 I:Integer;
Begin
 Result:=Nil;
 For I:=0 to p_oMenuItem.Count-1 Do
  If p_oMenuItem.Items[I].Name=p_strName Then
   Begin
    Result:=p_oMenuItem.Items[I];
    Exit;
   End;
 For I:=0 to p_oMenuItem.Count-1 Do
  Begin
   Result:=FindInSubMenus(p_oMenuItem.Items[I]);
   If Result<>Nil Then Exit;
  End;
End;

Begin
Result:=Nil;
For i:=0 to p_oMenu.Items.Count-1 Do
 If p_oMenu.Items[i].Name=p_strName Then
  Begin
   Result:=p_oMenu.Items[i];
   Exit;
  End;
For i:=0 to p_oMenu.Items.Count-1 Do
 Begin
  Result:=FindInSubMenus(p_oMenu.Items[i]);
  If Result<>Nil Then Exit;
 End;
End;




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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
14-1090219157
Nous Mellon
2004-07-19 10:39
2004.08.08
Осваиваем интернетъ


11-1078470890
M5
2004-03-05 10:14
2004.08.08
Как сортировать список TList?


1-1090482565
Виталя
2004-07-22 11:49
2004.08.08
Как сделать Hint для StringGrid многострочным ?


4-1088364045
juiceman
2004-06-27 23:20
2004.08.08
ПЕрехват АПИ


1-1090435056
Satan
2004-07-21 22:37
2004.08.08
Работа с большими (2**512) числами!




   Наверх