|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
08.09.2003, 06:34 | #1 | |
HYPERLINK/SHORTCUT MENU ?????????
AutoCAD/AutoLISP
Seattle/USA
Регистрация: 27.08.2003
Сообщений: 1,133
|
||
Просмотров: 7013
|
|
||||
Регистрация: 25.08.2003
Ярославль
Сообщений: 19
|
Есть системная переменная:
SHORTCUTMENU Управление доступностью контекстных меню (стандартного, режимов редактирования и команд) в области рисования. SHORTCUTMENU является суммой следующих значений: 0 Все контекстные меню отключены (режим совместимости с R14). 1 Доступно стандартное контекстное меню. 2 Доступно контекстное меню режима редактирования. 4 Доступно контекстное меню режима команд. К нему можно обратиться в любой момент, пока активна какая-либо команда. 8 Контекстное меню режима команд доступно только при условии, что в текущий момент в командной строке присутствуют какие-либо опции. Если одновременно должно быть активно несколько меню, следует ввести сумму соответствующих чисел. Например, значение 3 активизирует стандартное контекстное меню (1) и меню режима редактирования (2). |
|||
|
||||
Startek Доброго времени суток.
Вот сваялось на VBA - работает можно навесить макро на кнопку.или добавить вызов через ЛИСП функцию и вызыват из командной строки. Public Sub OpenHyper() Dim oObj As Object Dim pnt As Variant On Error Resume Next Call ThisDrawing.Utility.GetEntity(oObj, pnt, "Select Object:") If Err.Number <> 0 Then Exit Sub End If Dim oHyper As AcadHyperlink Dim cFileName As String For Each oHyper In oObj.Hyperlinks cFileName = UCase(oHyper.URL) If Mid$(cFileName, Len(cFileName) - 2, 3) = "DWG" Then If Not FindOpenFile(cFileName) Then Call Application.Documents.Open(oHyper.URL, False) End If End If Next End Sub Private Function FindOpenFile(cName As String) As Boolean Dim oDoc As AcadDocument For Each oDoc In Application.Documents If UCase(oDoc.FullName) = UCase(cName) Then FindOpenFile = True Exit Function End If Next FindOpenFile = False End Function |
||||
|
||||
AutoCAD/AutoLISP Регистрация: 27.08.2003
Seattle/USA
Сообщений: 1,133
|
Спасибо огмное Аркадий,
очень извняюсь за глупыйвопрос, я аутолиспом занимаюь с 1991 а вот VBA так и не освоил. С кakим EXTENSION сохранить Ваш код? И как его загрузить и вызвать аутолиспом? Заранее благдарен. Startrek |
|||
|
||||
Startek - У вас ,я так понимаю . рабочий полдень. а у меня пол второго ночи - поракидало нас всех однако.
С макро все просто В любом чертеже запускаем VBAIDE Раскрываем ThisDrawing и впечатываем код. Делаем SAVE - в результате сохранится фаил с расширением DVB Я сохранил как OpenHyper.dvb в директории SUPPORT АвтоКада Запускать можно так: 1. Загружаем с помощью APPLOAD фаил DVB и запускаем макро с помощью VBARUN - но это долго и противно. 2.Создаем кнопку и в ней пишем такую строку ^C^C-vbarun;OpenHyper.dvb!ThisDrawing.OpenHyper Успехов. |
||||
|
||||
AutoCAD/AutoLISP Регистрация: 27.08.2003
Seattle/USA
Сообщений: 1,133
|
Дааа раскидало, как там у Платонова в "Скравенном челевеке" - поехал менять ножики на хлеб, да
только в Брзилии.... Огромное спасибо за пояснения прямо сейчас и испробую, даже не знаю как отблагодарить, Startrek |
|||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
menu macros | Sergiy | Программирование | 14 | 23.10.2007 14:31 |
Как отучить Screen Menu сворачиваться при каждой загрузке? | Vlad_black | AutoCAD | 12 | 10.12.2006 03:24 |
Slide Menu | Залётный | Программирование | 4 | 09.11.2004 15:10 |