Цитата:
Сообщение от allar8
Работает. Спасибо!
Сведем в одно сообщение рабочее решение теперь.
Создаем поле %<\AcVar USERI1>%
Стандартную команду регенерировать все ВСЕРЕГЕН превращаем в макросик, т.е. дополняем ее всем уже известной тут строчкой
^C^C(setvar "USERI1" (length(layoutlist)));_updatefield;_all;;
В результате получаем кнопку ВСЕРЕГЕН с макросом ^C^C_regenall ^C^C(setvar "USERI1" (length(layoutlist)));_updatefield;_all;;
Т.е. что получили
при выполнении регенерировать все ВСЕРЕГЕН - это поле (%<\AcVar USERI1>%) обновляется, но при открытии файла обновления не происходит.
А с помощью Кулика Алексея удалось и при открытии файла выполнить обновление этого поля см. #50
У меня из #50 зарабатало с файлом acad.mnl
В конце файла acad.mnl прописал, рекомендуемые Куликом Алексеем строчки:
Т.е. нуно чтоб только обновлялось это поле %<\AcVar USERI1>%
(setvar "useri1" (length (layoutlist)))
(vl-cmdf "_.updatefield" "_all" "")
Мелоч казалось бы - обновляемое поле с кол-вом лайотов, а приятно)))
|
Люди подскажите плиз как запретить строчке (vl-cmdf "_.updatefield" "_all" "") трогать поля из подшивки, или может другое есть решение описанной тут задачи)
(vl-cmdf "_.updatefield" "_all" "") - в решетки превращает зараза) подшивочные поля - если с подшивкой связи нет - а не надо бы трогать то подшивочные поля то.
ВСЕРЕГЕН жи не трогает, а другие поля обновляет)
Т.е. нужно чтоб обновлялось только это поле %<\AcVar USERI1>%
Разобралси - вместо (vl-cmdf "_.updatefield" "_all" "") нуно (command "_regenall")