Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];

Вниз

Можна ли добавлять динамически пункты меню в MainMenu?   Найти похожие ветки 

 
Ande   (2005-08-19 10:51) [0]

Можна ли добавлять динамически пункты меню в MainMenu?


 
Ega23 ©   (2005-08-19 11:05) [1]

Можно.


 
Ande   (2005-08-19 11:07) [2]

Как?


 
syte_ser78 ©   (2005-08-19 11:14) [3]

mainmenu1.Items.Add


 
Ega23 ©   (2005-08-19 11:27) [4]


With RQInfAdds do
 begin
  if IsEmpty then Exit;
  ilMenuImages.Clear;
  First;
  While not Eof do
   begin
    MenuItem:=TMenuItem.Create(DataMenu);
    MenuItem.Caption:=FieldByName("InfaddNam").AsString;
    MenuItem.ImageIndex:=LoadBitmap(RQInfAdds,"InfaddImg",ilMenuImages);
    MenuItem.Tag:=FieldByName("InfaddID").AsInteger;
    MenuItem.ShortCut:=TextToShortCut(FieldByName("InfaddKey").AsString);
    MenuItem.OnClick:=MenuItemClick;
    DataMenu.Items.Add(MenuItem);
    Next;
   end;
 end;


 
Ande   (2005-08-19 11:44) [5]


> mainmenu1.Items.Add


извиняюсь, но можна еще подробней. Например надо добавить пункт "New".


 
syte_ser78 ©   (2005-08-19 11:52) [6]

Ega23 вроде как ответил.
Меняеш
MenuItem.Caption:=FieldByName("InfaddNam").AsString;
на
MenuItem.Caption:="New";
будет то что хочеш.

var
  menuitem:tmenuitem;
begin
  MenuItem:=TMenuItem.Create(mainmenu1);
  menuitem.Caption:="new";
  mainmenu1.Items.Add(menuitem);
end;


 
Ande   (2005-08-19 12:06) [7]

спасибо
А с подменю можна так делать?


 
syte_ser78 ©   (2005-08-19 12:10) [8]

Ande   (19.08.05 12:06) [7]
mainmenu1.Items[i].Add(menuitem);


 
Ega23 ©   (2005-08-19 12:14) [9]

Блин, ну посмотри же Help наконец-то!


TMenuItem.Add

Adds one or more menu items to the end of the Items property array.

procedure Add(Item: TMenuItem); overload;
procedure Add(const AItems: array of TMenuItem); overload;

Description

Use Add to add new menu items to the dropdown menu for this menu item. If this menu item is the value of the Items property of a main menu or pop-up menu, Add adds the items to the end of the menu.

Specify a single new menu item to add as the value of the Item parameter, or an array of new menu items as the value of the AItems parameter.


 
Ande   (2005-08-19 12:14) [10]

что такое i?
syte_ser78, может у Вас есть описание какое-то по этому вопросу. Буду очень благодарен.


 
Ande   (2005-08-19 12:21) [11]


> Ega23 ©   (19.08.05 12:14) [9]
> Блин, ну посмотри же Help наконец-то!

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


 
syte_ser78 ©   (2005-08-19 12:22) [12]

Ande   (19.08.05 12:14) [10]
:))))

i - это переменная. Целое положительное число заданное вами явно либо перебираемое в цикле. Нумерация итемов начинается с нуля.
Если нужно добавить пунк подменю в первое меню пишеш
mainmenu.items[0].add...
первый пункт подменю первого меню
mainmenu.items[0].items[0].add...
и т.д.


 
Ega23 ©   (2005-08-19 12:25) [13]

i - это индекс того мамого родительского MenuItem

var
i, ParentItem:Integer;
MenuItem:TMenuItem;
begin
MenuItem:=TMenuItem.Create(PopupMenu1);
MenuItem.Caption:="Здесь есть подменю из пяти пунктов";
ParentItem:=PopupMenu1.Items.Add(MenuItem);

for 1:=1 to 5 do
 begin
  MenuItem:=TMenuItem.Create(PopupMenu1);  
  MenuItem.Caption:="Подменю №"+IntToStr(i);
  PopupMenu1.Items[ParentItem].Add(MenuItem);
 end;

end;



 
Ega23 ©   (2005-08-19 12:26) [14]

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

Что не мешает начинающим хотя бы иногда заглядывать в Help, не так ли?


 
Ande   (2005-08-19 12:33) [15]

не мешает, конечно. Но в хелпе используются понятия которые не понятны начинающему.
Спасибо за:

> syte_ser78 ©   (19.08.05 12:22) [12]

и

> Ega23 ©   (19.08.05 12:25) [13]

Теперь понятно. Просто я никогда не работал с MainMenu



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

Форум: "Начинающим";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.038 c
6-1117874430
Random(256)
2005-06-04 12:40
2005.09.25
Как установить соединение без компонентов...


4-1122734301
lordalexander
2005-07-30 18:38
2005.09.25
BlockInput


2-1123885149
Витёк
2005-08-13 02:19
2005.09.25
Обработка события входа и выхода курсора мыши!


2-1123957167
Darkmaster
2005-08-13 22:19
2005.09.25
ftp


14-1125007108
Fire Fox
2005-08-26 01:58
2005.09.25
Mozilla FireFox Несколько вопросов ...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский