Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Добавление пункта меню / 14 сообщений из 14, страница 1 из 1
24.09.2004, 17:16
    #32710931
Telum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
Уважаемые, просто выбился из сил в поисках решения: - как поместить свой пункт меню в контекстное меню explorer`а - в смысле виндов а не IE?
...
Рейтинг: 0 / 0
24.09.2004, 17:21
    #32710941
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
с помощью фпкса тяжело
...
Рейтинг: 0 / 0
24.09.2004, 17:35
    #32710979
Telum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
Знаете до чего я дожился - пытался в реестре найти веточку - которая отвечала бы за ассоциацию пункта меню виндов и EXE файла
_________________________________________________________________
А вообще у меня достаточно простая задача:
-Пользователь в проводничке правой кнопочкой выбирает файл (или несколько) и мышкой открывает контекстное меню --> Нажимает на пункт меню (определенный мной) и над файлом выполняются некоторые действия (небольшое редактирование) - Но важным моментом является то, что он это делает из КМ (контекстное меню) виндов!!!!
...
Рейтинг: 0 / 0
24.09.2004, 17:37
    #32710984
Telum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
leaf - а вы думали что только сами способны задавать в пятницу такие вопросы :-)
...
Рейтинг: 0 / 0
24.09.2004, 17:45
    #32711005
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
ну вы же похоже самый большой спец по своему вопросу )
т. е . вряд ли вам посоветует что-то более умное чем вы накопали
...
Рейтинг: 0 / 0
24.09.2004, 17:48
    #32711017
Telum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
Пошутили, пошутили, - а вот мне - то не очень смешно - не люблю неразгаданных решений а вы :-)?
...
Рейтинг: 0 / 0
24.09.2004, 17:54
    #32711035
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
конечно не люблю но задача непростая а я с ней не сталкивался
вам нужно найти того кто делал
тут даже не видно как апи виндоус подвязать
ну дискриптор окна это элементарно а остальное тяжелее
не знаю даже найдете вы что нибудь через реестр
и потом где это происходит щелчок на рабочем столе
...
Рейтинг: 0 / 0
25.09.2004, 03:31
    #32711400
Igor Korolyov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
Думаю что это невозможно сделать средствами только фокса - надо нарисовать
вспомогательную компоненту на C++ и уж из неё можно будет тем или иным
образом вызывать фоксовую прогу. Подробности создания своих "добавлений" к
объектам Shell (коим в частности является и контекстное меню) описаны в
MSDN.
P.S. Также имеются различные готовые компоненты, которые послужат этим самым
промежуточным мостом - попробуй поискать VFP+Shell+Context+Menu

Posted via ActualForum NNTP Server 1.0
...
Рейтинг: 0 / 0
25.09.2004, 03:35
    #32711402
Igor Korolyov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
Думаю что это невозможно сделать средствами только фокса - надо нарисовать
вспомогательную компоненту на C++ и уж из неё можно будет тем или иным
образом вызывать фоксовую прогу. Подробности создания своих "добавлений" к
объектам Shell (коим в частности является и контекстное меню) описаны в
MSDN.
P.S. Также имеются различные готовые компоненты, которые послужат этим самым
промежуточным мостом - попробуй поискать VFP+Shell+Context+Menu

Posted via ActualForum NNTP Server 1.0
...
Рейтинг: 0 / 0
26.09.2004, 12:06
    #32711805
Ray.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
2 Telum
Если просто нужно добавить в контекстное меню проводника пункт меню, то это сделать можно с помощью реестра. В ВинХР можно так:
В разделе HKEY_CLASSES_ROOT\ *\ Shell\ создаете раздел с любым названием, например, MyMenu, в этом разделе будет один строковый параметр с названием: (По умолчанию), присваиваете ему значение EditFile - именно эту надпись будете видеть в контекстном меню. Теперь в этом же разделе создаете раздел Command. Значение строкового параметра (По умолчанию) задаете равным вашей команде, например если вы хотите открыть файл в FoxPro, строка следующая: HKEY_CLASSES_ROOT\ *\ Shell\ MyMenu\ Command = "C:\Program Files\Microsoft Visual FoxPro 8\vfp8.exe".Теперь нужно перезагрузить explorer и можно проверять. По клику на любом файле правой кнопкой мыши в контекстном меню будет пункт EditFile, при выборе которого, будет сделана попытка открыть файл в FoxPro.

Это если я правильно понял цель и назначение этого пункта меню.
...
Рейтинг: 0 / 0
27.09.2004, 13:46
    #32712696
Telum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
Ray, вы всё верно поняли - но - я с друдом вижу то - каким образом будет в фокс передаваться параметр (имя или имена файлов) - ведь пользователь будет выбирать конкретный файл?
...
Рейтинг: 0 / 0
27.09.2004, 14:07
    #32712767
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
есть ещё такая штука как программма которая открывает файл по умочанию
настраиваеться средствами виндовс не обязательно в реестре
потом пользователь просто нажимает кнопку ентер или двойной клик мышью и винда делает попытку открыть данный файл в этой программе
можете попытаться это использовать
...
Рейтинг: 0 / 0
27.09.2004, 14:09
    #32712770
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
з.ы. или из контекстного меню открыть
открыть с помощью
...
Рейтинг: 0 / 0
27.09.2004, 15:19
    #32713020
Ray.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление пункта меню
2Telum
Если сделать так, как я написал в предыдущем примере, то если кликнуть правую кнопку мыши на любом файле, то появится контекстное меню с созданным пунктом. Выбираем пункт - и файл, по которому кликнули, будет открываться в FoxPro автоматически . Другое дело, "поймет" ли этот формат сам FoxPro. Если Вам нужно, чтобы пункт меню был виден только для одного типа файлов, то нужно в ветке реестра HKEY_CLASSES_ROOT искать этот тип файлов (это в случае, если этот тип файлов зарегистрирован в Windows) и уже для этого конкретного типа файлов создавать пункт меню. Типичный пример: текстовые файлы. Если нужно, чтобы *.txt файлы открывались не в Блокноте, а, например, в Вашем любимом текстовом редакторе (пусть будет Aditor, неважно), делаем следущее:
- ищем в HKEY_CLASSES_ROOT ветвь txtfile;
- там уже есть созданная ветвь shell, а в ней создаем раздел "mymenu"
- изменяем значение строкового параметра (По умолчанию) на Aditor
- внутри раздела mymenu создаем раздел Command с параметром (По умолчанию) - C:\Program Files\Aditor\aditor.exe
Получится:
HKEY_CLASSES_ROOT\txtfile\shell\mymenu\command = "C:\Program Files\Aditor\aditor.exe". И теперь по правому клику на файле *.txt будет виден пункт Aditor. Вы выбираете пункт и файл автоматически открывается в этом самом Aditore.
Это самый простой случай. Просто не совсем понятно какие-именно файлы вы хотите изменить и в какой именно программе. Если это таблицы фокс-про и вы хотите их открыть в режиме Browse, то метод, описанный выше, думаю, прокатит. Только вместо txt файлов нужно найти ветку dbffile. Но если вариант посложнее, типа у вас есть приложение и ее *.exe файл и вам нужно открыть выбранные файлы-таблицы в формах этого приложения... то тут, думаю, все не так просто.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Добавление пункта меню / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]