скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Динамическое добавление пунктов меню



Честно говоря, я так и не понял к чему вы хотите добавлять новые пункты меню - к верхнему уровню или в качестве подменю. На всякий случай я публикую оба метода. Выбирайте любой.

Новый элемент верхнего уровня:


procedure tform1.addmainitem(s: string);
var
  newitem: Tmenuitem;
begin
  newitem := tmenuitem.create(Mainmenu1);
  newitem.caption := s;
  {если вы хотите определить событие onclick
  newitem.onclick:=Dynamenuclick; }
  {добавляем это к верхнему уровню меню}
  mainmenu1.items.insert(mainmenu1.items.count, newitem);
  removemenu1.enabled := true;
  addmenuitem1.enabled := true;
end;

Создание подменю:


procedure tform1.addsubitem(s: string; to : integer);
var
  newitem, toitem: Tmenuitem;
begin
  {to = верхний уровень меню для нового пункта}
  toitem := mainmenu1.items[to ];
  newitem := tmenuitem.create(toitem);
  newitem.caption := s;
  {если вы хотите определить событие onclick
  newitem.onclick:=Dynamenuclick; }
  toitem.onclick := nil;
  toitem.insert(toitem.count, newitem);
  removemenuitem1.enabled := true;
end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook