Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.06;
Скачать: CL | DM;

Вниз

Системное контекстное меню   Найти похожие ветки 

 
yaJohn   (2006-12-08 11:27) [0]

Есть TPopupMenu. Нужно заполнить его элементами из системного контекстного меню для определённого файла или папки. Особо интересны подпункты SendTo и New. Желательно, конечно, с иконками, но сие уже вторично. И само собой нужно уметь выполнять соответствующие операции.
В JCL есть модуль JclShell, а в нем функция DisplayContextMenu, которая вызывает нужное меню, но мне нужно не показать, а заполнить уже имеющееся TMenu.
Можно переформулировать задачу иначе:
Как заполнить TMenu элементами из имеющегося HMENU с сохранением функциональности?


 
DVM ©   (2006-12-08 12:19) [1]

Тема уже здесь всплывала - можно ведь самому просканить нужные разделы реестра. Эксплорер их оттуда и берет. Это проще, чем связываться с оболочкой и ее меню.


 
clickmaker ©   (2006-12-08 12:25) [2]


> Это проще, чем связываться с оболочкой и ее меню

не думаю. через IContextMenu(2) лучше


 
yaJohn   (2006-12-08 12:40) [3]

Дело в том, что я разрабатываю как раз расширение оболочки, так что тут сам бог велел :)

> через IContextMenu(2) лучше
Через IContextMenu я могу заполнить HMENU, это работает. А вот как выпотрошить HMENU?


 
Rouse_ ©   (2006-12-08 12:56) [4]

http://rouse.drkb.ru/winapi.php#syspopup


 
Rouse_ ©   (2006-12-08 12:59) [5]

Только измени пример .
Вот эта строку
ShellContextMenu := CreatePopupMenu;
замени на
ShellContextMenu := MySuperMenu.Handle;



Страницы: 1 вся ветка

Текущий архив: 2007.05.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
2-1176733394
Strate
2007-04-16 18:23
2007.05.06
Удалить из файла кусок


2-1174651027
Tifon
2007-03-23 14:57
2007.05.06
Спектроанализатор. Как сделать?


15-1176264390
Slider007
2007-04-11 08:06
2007.05.06
С днем рождения ! 11 апреля


2-1176903171
sword00
2007-04-18 17:32
2007.05.06
Нажать кнопку в окне другой программы


4-1165573440
leonidus
2006-12-08 13:24
2007.05.06
Работа с буфером обмена