Реклама i
Стань нашим партнером - зарабатывай с нами!
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Хочу создать свой раскрывающийся список в меню ACAD

Хочу создать свой раскрывающийся список в меню ACAD

Ответ
Поиск в этой теме
Непрочитано 19.08.2004, 15:47 #1
Хочу создать свой раскрывающийся список в меню ACAD
maxw
 
Сообщений: n/a

Можно ли в меню создать раскрывающийся список (как список цветов или толщин линий) и как передать выбранное значение в LISP-программу?
Просмотров: 5048
 
Непрочитано 19.08.2004, 21:12
#2
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


Кажись, сие доступно только на ObjectARX, но не на Лиспе.
vk вне форума  
 
Непрочитано 20.08.2004, 09:45
#3
Pilot

Проектировщик свиноводство
 
Регистрация: 21.08.2003
Сообщений: 2,261


Если не ошибаюсь:
Раскрывающийся список водможен в диалоговом окне написанном на DCL. Но постоянно на экране, тем более в меню его не будет - вызывать надо.
Pilot вне форума  
 
Непрочитано 20.08.2004, 15:16
#4
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


>Pilot
Именно так. Но к меню такой подход уже никакого отношения не имеет.... ну, кроме прописанной в него команды вызова :wink: .
vk вне форума  
 
Непрочитано 20.08.2004, 15:37
#5
Lenich

Опер дир
 
Регистрация: 28.04.2004
Москва
Сообщений: 291


Можно попробовать в *.mnu файле прописать подобно следующему:
Код:
[Выделить все]
***TOOLBARS

**TB_DIMENSION

ID_DimStyle  [_Control(_dimstyle)]
Может и получится. :wink:
Lenich вне форума  
 
Непрочитано 20.08.2004, 15:43
#6
Pilot

Проектировщик свиноводство
 
Регистрация: 21.08.2003
Сообщений: 2,261


В Акад-2000 у меня в свое время так не вышло. А в -2005 не пробовал.
Pilot вне форума  
 
Непрочитано 20.08.2004, 15:48
#7
Lenich

Опер дир
 
Регистрация: 28.04.2004
Москва
Сообщений: 291


Сам то я вообще не пробовал, просто если бы мне так было нужно, начал бы с этого.
Lenich вне форума  
 
Непрочитано 18.12.2005, 10:03
#8
Stork


 
Регистрация: 18.12.2005
Ю-Сах
Сообщений: 3


Типа такого что ли?
[ATTACH]1134889567.jpg[/ATTACH]
[ATTACH]1139950664.jpg[/ATTACH]
Stork вне форума  
 
Непрочитано 18.12.2005, 11:52
#9
eax

проектирование транспортных сооружений
 
Регистрация: 26.04.2005
Москва
Сообщений: 107
<phrase 1=


Я вот писал прогу - сетапник для своих утилит AutoCAD. Утилиткимои предстаавляют небольшие ехе-шники, и всё время их тыкать в браузере не хотелось , да свой брауз не хотел писать дляних ....

Для 2006-ого такой сетапник не получился: ну никак не получается сохранить менюшки до следующего сеанса АКАКДа.

var
btn: IAcadToolbarItem;
mn: IAcadPopupMenuItem;
Tb: IAcadMenuGroup;
btnBr: IAcadToolbar;
btn_: IAcadToolbarItem;
Menu: IAcadPopupMenu;
SubMenu1, SubMenu2, SubMenu3, SubMenu4: IAcadPopupMenu;
begin
...
Menu:= Tb.Menus.Add(MineMenus[MineMenusCount]);
SubMenu1:= Menu.AddSubMenu(1, 'Общиефункции');
Macro:= '-vbarun MacrosUn.dvb!ThisDrawing.ACDPROP'+#13;
mn:= SubMenu1.AddMenuItem(SubMenu1.Count+1, 'Настройки', Macro);
mn.HelpString:= 'Настройки AutoCad/СтройУтилит';
mn:= SubMenu1.AddSeparator(SubMenu1.Count+1);
// и т.д.
...
SubMenu2:= Menu.AddSubMenu
(Menu.Count+1, 'Металлоконструкции');
Macro:= '-vbarun MacrosUn.dvb!ThisDrawing.Sortament'+#13;
mn:= SubMenu2.AddMenuItem(SubMenu2.Count+1, 'Профиль
металлопроката', Macro);
mn.HelpString:= 'Черчение профиля металлопроката';
mn.EndSubMenuLevel:= 1;
...
Menu.InsertInMenuBar(AcadDoc.Application.MenuBar.Count-2);
...
end;
eax вне форума  
 
Непрочитано 19.12.2005, 06:39 Re: Хочу создать свой раскрывающийся список в меню ACAD
#10
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Цитата:
Сообщение от maxw
Можно ли в меню создать раскрывающийся список (как список цветов или толщин линий) и как передать выбранное значение в LISP-программу?
Эти списки находятся не в меню, а в панелях инструментов. Свои создать нельзя. Можно только махинировать со стандартными.

В меню можно вставлять свои разделы и пункты. Или статически, прописывая их в MNU (CUI) или динамически, через объектную модель AutoCAD. Но это уже будут не раскрывающиеся списки (combobox).

Передать значение из любого макроса (из панели или из меню) в LISP-программу можно (через объект), можно и просто ожидание в программе предусмотреть во время какого-то getxxx, но это очень плохое решение. В этом случае пользователь будет обязан выбрать данные именно из меню. А знать этого он не обязан. Подобным образом была сделана АРКО - там в меню База1 и База2 были спрятаны несколько значений в макросе, а пользователь должен был знать, когда их нажимать.

Правильное решение - прятать в макросе вызов функции с заданными аргументами. Тогда, при выборе из меню или панельки, программа уже будет знать требуемые параметры.

Возможны и другие варианты с использованием внешних COM-серверов, когда меню вообще не прикреплено к AutoCAD. В этом случае возможностей гораздо больше, чем у combobox, так как они ограничены и по ширине, и являются линейными. Внешний сервер можно сделать и плавающим и "всегда сверху", и сворачивающимся в полоску.

Например, так:
[ATTACH]1134963574.jpg[/ATTACH]
ShaggyDoc вне форума  
 
Непрочитано 19.12.2005, 06:42
#11
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Почему-то картинка растянулась :cry:

А вот это же в развернутом виде:
[ATTACH]1134963738.jpg[/ATTACH]
ShaggyDoc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Хочу создать свой раскрывающийся список в меню ACAD

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск