Динамическое меню

kot07
Дата: 25.05.2015 22:57:48
Возможно ли сделать такое меню, которое строилось бы из запроса?
в mainmenu делаем только один элемент "Меню"
в "Меню" сами создаем элемент 1, а вот подменю элемента 1 создается динамически из результата запроса.
Я так понимаю нужен цикл который будет создавать subitem пока не дойдет до конца результата запроса + записывать имена из строки результата запроса в caption? Как в таком случае ко всему обращаться?
Изопропил
Дата: 25.05.2015 23:46:52
kot07
Дата: 26.05.2015 12:23:26
так тут WinApi, я делаю в билдере
Dimitry Sibiryakov
Дата: 26.05.2015 12:41:33

kot07
я делаю в билдере

А что ты называешь словом "обращаться"? Обычно достаточно при создании пунктов меню
назначить им обработчик OnClick. Больше с ними делать ничего не нужно.

Posted via ActualForum NNTP Server 1.5

MasterZiv
Дата: 26.05.2015 12:48:28
kot07
Возможно ли сделать такое меню, которое строилось бы из запроса?


Да, возможно.

kot07
в mainmenu делаем только один элемент "Меню"
в "Меню" сами создаем элемент 1, а вот подменю элемента 1 создается динамически из результата запроса.
Я так понимаю нужен цикл который будет создавать subitem пока не дойдет до конца результата запроса + записывать имена из строки результата запроса в caption?


Да, всё так.

kot07
Как в таком случае ко всему обращаться?


К меню особенно обращаться не нужно, меню генерирует WM_COMMAND с заданным идентификатором. Тебе нужно только назначать динамически идентификаторы из определённого диапазона и уметь их декодировать обратно в комманды из меню, пришедшего в запросе.

Всё довольно просто .
MasterZiv
Дата: 26.05.2015 12:49:11
kot07
так тут WinApi, я делаю в билдере


Там тоже не сильно сложнее, функции API нужно заменить на соотв. функции VCL.
kot07
Дата: 26.05.2015 17:24:27
я думал можно как то проще сделать вот как то так у меня представлялось все это дело
while (!DataModule->ADOQuery->Eof)
MainMenu1->Items->Items[1]->CreateSubItem->Caption = 1 значению из результата запроса
kot07
Дата: 26.05.2015 17:25:04
но сделать вот так нельзя
Dimitry Sibiryakov
Дата: 26.05.2015 17:33:34

kot07
вот как то так у меня представлялось все это дело

Ну примерно так оно и делается, но кому нужны пункты меню, которым не назначены
обработчики клика?..

Posted via ActualForum NNTP Server 1.5

kot07
Дата: 26.05.2015 17:38:46
а как то можно добавить их в цикл чтобы создавались? просто в под меню планируется выводить содержимое одного из столбцов таблицы, например название городов и при клике на город передавать в sql запрос значение Tag которое будет порядковому номеру при добавление