Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как динамически добавить подменю в MainMenu? [D7, 95/98]


Гость22 ©   (2005-09-26 20:02:00) 

т.е. в процесе выполнения программы.


umbra   (2005-09-27 15:26:00) [1]

Ниже перевод, но вообще-то лучше учи английский или поищи в нете перевод справки

Создает и инициализирует пункт меню, который представляет подменю.

Модуль: Меню

синтаксис в Delphi :


function NewSubMenu(const ACaption: string; hCtx: THelpContext; const AName: string; const Items: array of TMenuItem; AEnabled: Boolean = True): TMenuItem;

Описание

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

параметр ACaption содержит строку, которая появляется в родительском меню для подменю.  

параметр hCtx содержит ID контекстной справки для пункта меню. //можно ставить 0

параметр AName содержит имя пункта меню, которое можно использовать для обращения к пункту меню из программы.

Параметр Items содержит массив пунктов меню, которые входят в подменю и появляются, когда пользователь щелкает на пункте подменю в родительском меню.

параметр Items_Size содержит индекс последнего пункта меню из Items (на единицу меньший чем количество пунктов меню).

параметр AEnabled указывает, активен ли пункт меню в родительском меню.

Как только подменю было создано с помощью NewSubMenu, его можно добавить к меню, используя метод родителя Add. Если все меню создается динамически во время выполнения, новый пункт меню можно добавить к массиву, который передается как параметр одной из функций NewMenu, NewPopupMenu или функции NewSubMenu.

Предупреждение: элемент, возвращенный NewSubMenu не имеет владельца. Вы должны позаботиться об освобождении занимаемой им памяти, когда этот элемент больше не нужен. методы TMenuItem Delete и Remove не освобождают память.


Гость22   (2005-09-27 14:59:00) [2]

там не по нашему и для начинающего - непонятно


umbra   (2005-09-27 14:46:00) [3]

так в хелпе ж все написано


Гость22   (2005-09-26 21:16:00) [4]


const ACaption: string;
hCtx: THelpContext;
const AName:string;
const Items: array of TMenuItem;

не могу понять значения параметров. Для чего они и какие можна упустить?


umbra   (2005-09-26 20:12:00) [5]

см. в хелпе


function NewSubMenu(const ACaption: string; hCtx: THelpContext; const AName: string; const Items: array of TMenuItem; AEnabled: Boolean = True): TMenuItem;


Наверх

Титульная страница Поиск, карта сайта Написать письмо