Как узнать путь к подгружаемым меню находящимся в окне menuload?
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Как узнать путь к подгружаемым меню находящимся в окне menuload?

Как узнать путь к подгружаемым меню находящимся в окне menuload?

Ответ
Поиск в этой теме
Непрочитано 11.04.2010, 09:39 #1
Как узнать путь к подгружаемым меню находящимся в окне menuload?
dextron3
 
проектировшик
 
СССР
Регистрация: 01.01.2007
Сообщений: 5,149

Вот не могу найти, где прописаны пути для данных менюшек,

[IMG]http://i073.***********/1004/8e/b104afd17cdet.jpg[/IMG]
__________________
инженер проектировшик с опттом программа авто гад образование высшие
Просмотров: 3070
 
Непрочитано 11.04.2010, 12:05
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,411


Код:
[Выделить все]
(defun test ()
  (mapcar
    (function
      (lambda (x) (cons (vla-get-name x) (vla-get-menufilename x)))
      ) ;_ end of function
    ((lambda (/ lst)
       (vlax-for item (vla-get-menugroups (vlax-get-acad-object))
         (setq lst (cons item lst))
         ) ;_ end of vlax-for
       (reverse lst)
       ) ;_ end of lambda
     )
    ) ;_ end of mapcar
  ) ;_ end of defun
Ну или сортированный по имени меню:
Код:
[Выделить все]
(defun test ()
  (vl-sort
    (mapcar
      (function
        (lambda (x) (cons (vla-get-name x) (vla-get-menufilename x)))
        ) ;_ end of function
      ((lambda (/ lst)
         (vlax-for item (vla-get-menugroups (vlax-get-acad-object))
           (setq lst (cons item lst))
           ) ;_ end of vlax-for
         ) ;_ end of lambda
       )
      ) ;_ end of mapcar
    (function
      (lambda (a b)
        (< (car a) (car b))
        ) ;_ end of lambda
      ) ;_ end of function
    ) ;_ end of vl-sort
  ) ;_ end of defun
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 11.04.2010, 14:12
#3
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Кулик Алексей aka kpblc, ункнов команд
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 11.04.2010, 16:07
#4
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,379


Цитата:
Сообщение от dextron3 Посмотреть сообщение
Кулик Алексей aka kpblc, ункнов команд
Offtop: новый перл Kpblc'у для блога в копилку.

Последний раз редактировалось Хмурый, 11.04.2010 в 16:28.
Хмурый вне форума  
 
Непрочитано 11.04.2010, 18:34
#5
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,411


dextron3, ты вот это читал?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 11.04.2010, 19:53
#6
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Кулик Алексей aka kpblc, обижаете
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 11.04.2010, 20:27
#7
twilight


 
Регистрация: 17.10.2009
Сообщений: 1,108


Цитата:
Сообщение от dextron3 Посмотреть сообщение
Кулик Алексей aka kpblc, обижаете
1. потомучто в скобках нужно вызывать (test)
2.
Код:
[Выделить все]
(defun test ()
(vl-load-com)
  (mapcar
    (function
      (lambda (x) (cons (vla-get-name x) (vla-get-menufilename x)))
      ) ;_ end of function
    ((lambda (/ lst)
       (vlax-for item (vla-get-menugroups (vlax-get-acad-object))
         (setq lst (cons item lst))
         ) ;_ end of vlax-for
       (reverse lst)
       ) ;_ end of lambda
     )
    ) ;_ end of mapcar
  ) ;_ end of defun
twilight вне форума  
 
Автор темы   Непрочитано 11.04.2010, 22:09
#8
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


twilight, а что это за новшество в при вызове со скобками, как то в первый раз такое слышу....

а так заработало спасибо, twilight, Кулик Алексей aka kpblc,
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 11.04.2010, 22:54
#9
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,411


Цитата:
Сообщение от dextron3 Посмотреть сообщение
а что это за новшество в при вызове со скобками, как то в первый раз такое слышу....
А это не новшество. Цитирую статью из #5:
Цитата:
Команда или функция ?
Для начала необходимо определиться, что у нас: команда или функция?
Немного теории.
В описании практически любого кода есть такая строка, как
Код:
и потом после нее чего-то там написано. Так вот то, что там написано и есть имя функции.
Если первыми символами являются C:, то функция готова к вызову из командной строки. Если такого нет, то вызывать функцию надо, заключая ее имя в круглые скобки.
Например, есть функция
Код:
[Выделить все]
(defun c:test ()<Что-то делаем 1>)
Ее вызывать (при условии, что она подгружена) с командной строки можно напрямую:
Код:
[Выделить все]
Команда : test
И будут выполнены действия <Что-то делаем 1>
А вот такую:
Код:
[Выделить все]
(defun test ()<Чего-то делаем 2>)
Можно будет вызывать только так:
Код:
[Выделить все]
Команда : (test)
И будут выполнены действия <Чего-то делаем 2>.
С точки зрения AutoCAD'a это 2 разных модуля.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.04.2010, 05:42
#10
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


dextron3, если тебе трудно лисп запустить, то посмотри в Настройках (Options), вкладку Файлы (Files). Там можно увидеть все пути, задействованные в AutoCAD'е.
Profan вне форума  
 
Автор темы   Непрочитано 12.04.2010, 07:20
#11
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Profan, Кулик Алексей aka kpblc, а что делать если два ожинаковых меню загружено ну имеется в верхней операционной строке, а менюлоад только одно?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 12.04.2010, 07:23
#12
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Цитата:
Сообщение от dextron3 Посмотреть сообщение
Profan, Кулик Алексей aka kpblc, а что делать если два ожинаковых меню загружено ну имеется в верхней операционной строке, а менюлоад только одно?
Поподробнее распиши.
Profan вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Как узнать путь к подгружаемым меню находящимся в окне menuload?



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мониторы LCD CRT Разное 94 17.06.2008 10:51
Как программно узнать масштабный коэфф. размерного стиля? kp+ Программирование 1 18.07.2006 12:37
Попасть в слой. Vova AutoCAD 106 10.03.2006 04:36
Как узнать текущую систему координат? Димас Программирование 4 27.02.2006 06:30
Как в чертеже автоматически прописать полный путь? Соня AutoCAD 5 14.09.2004 16:33