MurCode
Форумы
Поиск
О проекте
C++
Новое сообщение
Динамическое меню
kot07
Дата: 25.05.2015 22:57:48
Возможно ли сделать такое меню, которое строилось бы из запроса?
в mainmenu делаем только один элемент "Меню"
в "Меню" сами создаем элемент 1, а вот подменю элемента 1 создается динамически из результата запроса.
Я так понимаю нужен цикл который будет создавать subitem пока не дойдет до конца результата запроса + записывать имена из строки результата запроса в caption? Как в таком случае ко всему обращаться?
Изопропил
Дата: 25.05.2015 23:46:52
kot07,
см AppendMenu
https://msdn.microsoft.com/ru-ru/library/windows/desktop/ms646977(v=vs.85).aspx
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 которое будет порядковому номеру при добавление
Назад
1
2
3
...
7
Вперед