| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Как скрыть редко используемые пункты в PopupMenu |
| Автор: Matrex 22.8.2016, 16:00 |
| Коллеги доброго времени суток. Подскажите, может кто знает как скрывать редко используемые пункты меню в PopupMenu? Знаю это можно сделать через ActionManager но такой вариант не подходит ввиду слишком разросшегося проекта и значительной переделки... |
| Автор: Garmahis 22.8.2016, 16:44 |
| А в чем конкретно вопрос? Если вы хотите скрывать часть пунктов, соответственно, вам надо определиться где и как хранить статистику использования этих пунктов. Если приложение многопользовательское то это надо привязывать дополнительно к каждому пользователю. В случае если какие-то пункты скрыты надо добавлять пункт "показать скрытые". Соответственно при прорисовке формы или в процедуре загрузки пунктов меню вам надо смотреть для каждого пункта эту статистику и принимать решение показывать или нет... |
| Автор: Matrex 22.8.2016, 17:08 |
| Я все это понимаю, и если решения проще нет, придется делать именно так, но я знаю что через ActionManager это делается автоматически (обратите внимание на word или excel 2003) - там используется именно эта технология. Delphi ее поддерживает - но слишком много переделок надо сделать уже в рабочем проекте у которого порядка 400 форм. В общем я думал что есть решение попроще: может компонент сторонний какой - типа кидаешь на форму и он сам считает клики и скрывает пункты меню... Если такого нет - буду колхозить свой... |
| Автор: Kitu Chepesi 14.9.2016, 18:09 |
| Можно создать потомка PopupMenu со своим функционалом, а потом в проекте просто переопределите все PopupMenu на своего потомка. Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Kak-skryt-redko-ispolzuyemyye-punkty-v-PopupMenu-id57baf80566ee18163a2d30d2#findElement_E7045_57d9684148556702f41406b8_0 |
| Автор: Kitu Chepesi 14.9.2016, 18:09 |
| Можно создать потомка PopupMenu со своим функционалом, а потом в проекте просто переопределите все PopupMenu на своего потомка. Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Kak-skryt-redko-ispolzuyemyye-punkty-v-PopupMenu-id57baf80566ee18163a2d30d2#findElement_E7045_57d9684148556702f41406b8_0 |
| Автор: Kitu Chepesi 14.9.2016, 18:09 |
| Можно создать потомка PopupMenu со своим функционалом, а потом в проекте просто переопределите все PopupMenu на своего потомка. Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Kak-skryt-redko-ispolzuyemyye-punkty-v-PopupMenu-id57baf80566ee18163a2d30d2#findElement_E7045_57d9684148556702f41406b8_0 |
| Автор: Kitu Chepesi 14.9.2016, 18:09 |
| Можно создать потомка PopupMenu со своим функционалом, а потом в проекте просто переопределите все PopupMenu на своего потомка. Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Kak-skryt-redko-ispolzuyemyye-punkty-v-PopupMenu-id57baf80566ee18163a2d30d2#findElement_E7045_57d9684148556702f41406b8_0 |
| Автор: Kitu Chepesi 14.9.2016, 18:09 |
| Можно создать потомка PopupMenu со своим функционалом, а потом в проекте просто переопределите все PopupMenu на своего потомка. Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Kak-skryt-redko-ispolzuyemyye-punkty-v-PopupMenu-id57baf80566ee18163a2d30d2#findElement_E7045_57d9684148556702f41406b8_0 |