Запуск exe-файла из выпадающих меню graphic.pmn

Автор Sinus, 07.12.12, 09:14:37

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Sinus

Подскажите, пожалуйста, если это возможно, как запустить *.exe приложение из выпадающих меню, допустим из полуавтоматического заполнения фамилий основной надписи чертежа или подобного меню (разные меню в файле graphic.pmn). Есть ли такая возможность? Если есть то как это можно реализовать?

obesov


Sinus

Вот пример.
Открываем чертеж, заходим в редактирование основной надписи, дважды щелкаем по ячейке материал, появляется меню:

  выбрать материал...
  удалить материал...
  свойство материала...

выбираем выбрать материал, появляется окно "Выбор Материала"
Воооот.
Меня интересует сам механизм данного таинства. Я хочу чтобы из такого или подобного меню полуавтоматического заполнения ячеек таблиц вылетала не окно "Выбор материала", а собственное exe-приложение (окно программы).

07.12.12, 12:03:28 #3 Последнее редактирование: 07.12.12, 12:24:03 от Sabahs
Кусок из файла graphic.pmn, MENU 1000 скорее всего, жёсткий указатель на справочник.

MENU 1000 'Вызов справочника материалов ref.exe
BEGIN
  MENUITEM "Выбрать материал|"
END

Sinus

в самом файле graphic.pmn я не вижу жестких ссылок и вообще ни каких ссылок, просто разные меню под разными номерами.


Sinus

что то я сомневаюсь, что номер меню это какая-то ссылка
Вот в меню-сервис-библиотеки стилей-оформлении основных надписей там присутствуют в свойствах ячеек ссылки на номера меню из файла graphic.pmn

Сомневаться или нет решать Вам, но номера уже достаточно, чтобы перехватить и подменить меню, учитывая, что оно принадлежит конкретному окну.

chelkar

Нужно подписаться на события редактирования ячейки штампа. Например IStampNotify::StampCellBeginEdit ()
Если пользователь кликнет по ячейке, то в событии придет номер. Проверяем и перехватываем.
Есть три события: двойной клик, начало редактирования (начало набора теста) и начало очистки (начало удаления текста).
Именно через эти события и поднимается "Выбор материала".
+ Благодарностей: 1

Sinus

хм, интересно, где нужно подписаться, если есть готовое exe приложение которое нужно запустить из ячейки таблицы?
Вижу выход только в написании библиотеки подключении ее через менеджер библиотек для обработчика событий, но может есть путь проще?

Правильно Вы видите, только можно библиотеку сделать типа AddIn и она будет автоматически загружаться с Компасом, тогда в менеджер библиотек, лазить не придётся.