Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.09.2009, 17:20   #1
San4o
Пользователь
 
Регистрация: 26.08.2009
Сообщений: 23
По умолчанию Mainmenu

Всем йоуу!)

У меня есть меню с различными подменю. можно ли и как вставить динамически пункт меню в подменю?

подробнее в приложении(например добавить в выделенне поле)...
Изображения
Тип файла: jpg 12.JPG (14.6 Кб, 44 просмотров)
San4o вне форума Ответить с цитированием
Старый 23.09.2009, 17:28   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
var MI:TMenuItem;
begin
 MI:=TMenuItem.Create(nil);
 MI.Caption:='bla';
 N451.Add(MI);
добавит к пункту с именем N451(в коде) подпункт с названием bla

Цитата:
Всем йоуу!)
не стоит так приветствовать.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 23.09.2009, 17:36   #3
San4o
Пользователь
 
Регистрация: 26.08.2009
Сообщений: 23
Радость

Спасибо. Хорошо.

Столкнулся с еще проблемкой...

При загрузке программа читает инифаил и по количеству секций создает пункты меню в подпунктах главного меню(как это делать я разобрался). Задача в следующем...
как в onclick созданного пункта меню записать индивидуальную процедуру для чтения в строку из инифайла ключей только выбранной секции(инифайла)=пункт меню?

Последний раз редактировалось Stilet; 24.09.2009 в 08:29.
San4o вне форума Ответить с цитированием
Старый 23.09.2009, 19:16   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

можно написать процедуру(как метод формы)
для чтения секции...имя нужной секции определять через Sender
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 23.09.2009, 21:01   #5
San4o
Пользователь
 
Регистрация: 26.08.2009
Сообщений: 23
По умолчанию

2 Пепел Феникса
а можно по подробнее, я не совсем понял.

>можно написать процедуру(как метод формы)
>для чтения секции...имя нужной секции определять через Sender

Это круто. только как задавать для вновь созданного пункта меню уникальный обработчик onclick, чтобы он забирал caption пункта(она же секция в инифайле) и по этому caption'у вытаскивал соответственные ключи?

т.е. у создаваемого пункта был общий шаблон onclick:
TForm1.mymenuclick(Sender:TObject);
begin
if mymenu.checked then mymenu.checked:=true
else
mymenu.checked:=false;

proc(mymenu.caption);
end;

Последний раз редактировалось Stilet; 24.09.2009 в 08:29.
San4o вне форума Ответить с цитированием
Старый 24.09.2009, 08:32   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
т.е. у создаваемого пункта был общий шаблон onclick:
Для каждого ITEMа меню ты описывешь единый обработчик:
Код:
TForm1.mymenuclick(Sender:TObject);
begin
 proc(TMenuItem(Sender).caption);
end;
TMenuItem(Sender) - будет указывать на тот итем который был кликнут.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.09.2009, 10:03   #7
San4o
Пользователь
 
Регистрация: 26.08.2009
Сообщений: 23
По умолчанию

2 Silet

Ты БОГ! спасибо
San4o вне форума Ответить с цитированием
Старый 24.09.2009, 10:09   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Ты БОГ! спасибо
Азъ есм Альфа ибн Омега. Пожалуйста.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
MainMenu Патрон Общие вопросы Delphi 9 09.10.2010 21:24
MainMenu Simon..14 Общие вопросы C/C++ 4 26.04.2009 14:28
mainmenu prizrak1390 Общие вопросы Delphi 3 17.03.2008 13:08
MainMenu Небесный Общие вопросы Delphi 5 27.11.2007 23:17
MainMenu merax Компоненты Delphi 2 07.02.2007 10:51