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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Редактирование атрибута дин. блока по двойному нажатию мышью.

Редактирование атрибута дин. блока по двойному нажатию мышью.

Ответ
Поиск в этой теме
Непрочитано 03.08.2016, 21:08 #1
Редактирование атрибута дин. блока по двойному нажатию мышью.
Enik
 
ГИП
 
Регистрация: 07.06.2015
Сообщений: 1,254

Здравствуйте, форумчане!

Сейчас делаю исполнительную геодезическую документацию. В ней нужно указать множество точек на плане и дать их координаты. Сварганил простенький динамический блок отметки на плане со скрытыми атрибутами. С выгрузкой координат в таблицу - всё отлично. Два щелчка - и каталог координат готов. Но вот незадача: вводить имя каждой точки приходится через свойства дин. блока. Очень неудобно.

Кто знает, как сделать редактирование текста атрибута "Name" по двойному нажатию мышкой, как для мультивыноски?

Динамический блок прилагается.

PS. В блоке координаты X и Y я поменял местами специально. Такая вот у нас система координат.

PSS. А если ещё и автообновление координат при перемещении блока удастся сделать - будет вообще шикарно.

Вложения
Тип файла: dwg
DWG 2013
Плановая отметка.dwg (39.8 Кб, 72 просмотров)


Последний раз редактировалось Enik, 03.08.2016 в 21:13.
Просмотров: 9556
 
Непрочитано 04.08.2016, 05:29
1 | #2
Gmk17

САПРовод
 
Регистрация: 22.01.2013
Красноярск
Сообщений: 290


Ctrl зажимаешь и даблкликаешь на атрибуте.

P.S. А зачем атрибут NAME сделан многострочным?
Gmk17 вне форума  
 
Автор темы   Непрочитано 04.08.2016, 09:18
#3
Enik

ГИП
 
Регистрация: 07.06.2015
Сообщений: 1,254


Цитата:
Сообщение от Gmk17 Посмотреть сообщение
trl зажимаешь и даблкликаешь на атрибуте.
Спасибо! Работает.

Цитата:
Сообщение от Gmk17 Посмотреть сообщение
P.S. А зачем атрибут NAME сделан многострочным?
На тот случай, если
а) под точкой идёт примечание, чем она является. Например, "Т. 1/Врезка в существующую сеть".
б) если у одной и той же точки есть два обозначения. Например, когда наш колодец также относится к другой сети: "Л-1/К-86.5-1".

Я пока что до этих точек не дошёл. Но вроде бы такой многострочный текст должен экспортироваться в таблицу без проблем.
Enik вне форума  
 
Непрочитано 19.08.2016, 17:08
#4
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Цитата:
Сообщение от Gmk17 Посмотреть сообщение
Ctrl зажимаешь и даблкликаешь на атрибуте.
Сначала мне этот способ тоже понравился, но на некоторых блоках, где есть атрибуты в других наборах параметра видимости частенько вылезает не тот атрибут, на который "контрольно даблкликнул", а другой, скрытый в данном состоянии видимости; после этого вылезший атрибут больше не пропадает - приходится отменять сделанное. Глюк, в общем, какой-то. Кто знает из-за чего он и как победить - буду признателен за рассказ.

Я нашел другое решение.
В адаптации (_CUI) в операциях при двукратном нажатии на атрибут динамического блока ставим макрос (не для LT):
Код:
[Выделить все]
^C^C_ATTIPEDIT;(cadr (grread T))
Правда, если нужно исправить атрибут, содержащий пробел, по нему кликнуть не получится - придется вызывать окно редактора атрибутов вручную (_EATTEDIT) или с кнопки. Запилить бы даблклик с контролом на вызов этой команды было бы здорово, но как - пока ума не приложу.

И вдогонку: если не нравится штатный редактор атрибутов (а он, мягко говоря, слегка кастрирован - уж не знаю, зачем), назначаем переменной ATTIPE значение 1 и работаем в удобном и привычном редакторе м-текста.
skkkk вне форума  
 
Непрочитано 22.08.2016, 16:09
#5
sertor

Геодезист
 
Регистрация: 23.05.2012
Ухта
Сообщений: 1,374


Цитата:
Сообщение от skkkk Посмотреть сообщение
В адаптации (_CUI) в операциях при двукратном нажатии на атрибут динамического блока ставим макрос (не для LT):
Код:
Код:
[Выделить все]
^C^C_ATTIPEDIT;(cadr (grread T))
А как быть, если нужно удалить какой-нибудь атрибут?
__________________
Как-то так.
sertor вне форума  
 
Непрочитано 23.08.2016, 00:30
#6
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Цитата:
Сообщение от sertor Посмотреть сообщение
А как быть, если нужно удалить какой-нибудь атрибут?
Не понятен вопрос. Разве его можно как-то удалить при помощи стандартного варианта редактирования атрибутов? Я имею в виду операцию при двукратном нажатии по умолчанию. Насколько я понимаю, удалить атрибут надо войдя в редактор блока. Или речь не об этом?
skkkk вне форума  
 
Непрочитано 23.08.2016, 08:29
#7
sertor

Геодезист
 
Регистрация: 23.05.2012
Ухта
Сообщений: 1,374


Цитата:
Сообщение от skkkk Посмотреть сообщение
Не понятен вопрос. Разве его можно как-то удалить при помощи стандартного варианта редактирования атрибутов? Я имею в виду операцию при двукратном нажатии по умолчанию. Насколько я понимаю, удалить атрибут надо войдя в редактор блока. Или речь не об этом?
Я пытался прикрутить Ваш макрос для редактирования атрибутов блока при двукратном нажатии в чертеже. По-умолчанию, появляется окно стандартного редактора (скрин 1). Иногда, некоторые атрибуты необходимо удалить. В этом случае удаление происходит безболезненно. А при использовании макроса удалить значение атрибута невозможно, хотя на мой взгляд, работать с ним удобнее.
Миниатюры
Нажмите на изображение для увеличения
Название: Image 1.png
Просмотров: 132
Размер:	12.6 Кб
ID:	175072  Нажмите на изображение для увеличения
Название: Image 3.png
Просмотров: 107
Размер:	6.7 Кб
ID:	175073  
__________________
Как-то так.
sertor вне форума  
 
Непрочитано 23.08.2016, 09:34
1 | #8
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Теперь понял - удалить значение атрибута (содержимое). Действительно, при попытке стереть текст в редакторе м-текста и выходе из него содержимое восстанавливается. Один из вариантов - добавить кнопку или сочетание клавиш на вызов стандартного окна редактирования. Я же в таких случаях ставлю просто пробел.
skkkk вне форума  
 
Непрочитано 22.08.2017, 21:12
#9
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


skkk (#4), можно попробовать команду, про которую мало кто помнит, Называлась она TEDIT и принадлежала к экспрессам старых автокадов, а затем исчезла.
Я ее лисп все время тащил в каждую новую версию ибо она работает несколько по-другому чем стандартная команда DDEDIT редактирования текста. Затем в 2016 имя TEXTEDIT появилось в основном автокаде заменив имя сущ. команды DDEDIT, ничего не изменив по сути. Экспрессовский лисп перестал работать. Выкладываю подправленный лисп. Попробуй для своей задачи Вот этот лисп Он покажет все атрибуты блока, насчет невидимых не проверял, попробуй.
Кстати, не проверял лисп на версиях старше 2016. Если не сработает, надо разыскать (поиском по форуму) старую версию TEDIT
Код:
[Выделить все]
 ;;
;;  tedit.lsp - generic text editing
;;
;;  Copyright © 1999 by Autodesk, Inc.
;;
;;  Your use of this software is governed by the terms and conditions of the
;;  License Agreement you accepted prior to installation of this software.
;;  Please note that pursuant to the License Agreement for this software,
;;  "[c]opying of this computer program or its documentation except as
;;  permitted by this License is copyright infringement under the laws of
;;  your country.  If you copy this computer program without permission of
;;  Autodesk, you are violating the law."
;;
;;  AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
;;  AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
;;  MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE.  AUTODESK, INC.
;;  DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
;;  UNINTERRUPTED OR ERROR FREE.
;;
;;  Use, duplication, or disclosure by the U.S. Government is subject to
;;  restrictions set forth in FAR 52.227-19 (Commercial Computer
;;  Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii)
;;  (Rights in Technical Data and Computer Software), as applicable.
;;
;;  ----------------------------------------------------------------
;;
;;  DESCRIPTION
;;  The TEDIT command provides a single command for editing all 
;;  forms of annotation objects.
;;
;;  ----------------------------------------------------------------
 
(defun C:TEDIT (/ noll filter ss idx ename elist kind)
  ;;  remove objects on locked layers from ss
  (defun noll (ss / i d ename)
    (setq i 0
          d 0 )
    (while (and ss
                (setq ename (ssname ss i)) )
      (if (acet-layer-locked (cdr (assoc 8 (entget ename))))
        (progn
          (ssdel ename ss)
          (setq d (1+ d))
        )
        (setq i (1+ i))
      )
    )
    (if (/= 0 d)
      (princ (acet-str-format "%1 %2 on a locked layer.\n"
                              d
                              (if (< 1 d) "were" "was") ) )
    )
    ss
  )
 
  (acet-error-init '(("CMDECHO" 0) T))
 
  ;;  make object filter
  (setq filter (list
        (cons 410 (if (and (= 0 (getvar "TILEMODE"))
                           (/= 1 (getvar "CVPORT")) )
                    "Model"
                    (getvar "CTAB") ) )
        '(-4 . "<OR")
          '(0 . "TEXT,MTEXT,RTEXT,ARCALIGNEDTEXT,DIMENSION,ATTDEF")
          '(-4 . "<AND")
            '(0 . "INSERT")
            '(66 . 1)
          '(-4 . "AND>")
        '(-4 . "OR>") ) )
 
  ;;  pick objects
  (if (not (and (= 1 (logand 1 (getvar "PICKFIRST")))
                (setq ss (noll (ssget "_I" filter))) ) )
    (setq ss (ssget "_:L" filter))
  )
 
  ;;  process ss
  (if ss
    (progn
      (setq idx -1)
      (acet-ui-progress "Editing:" (sslength ss))
      (sssetfirst)
      (redraw)
      (while (setq ename (ssname ss (setq idx (1+ idx))))
      (redraw ename 3)
      (redraw)
        (setq elist (entget ename)
              kind (cdr (assoc 0 elist)) )
        (cond
          ((or (= kind "TEXT")
               (= kind "MTEXT")
               (= kind "DIMENSION")
               (= kind "ATTDEF") )
            (command "_.TEXTEDIT" ename "") )
          ((= kind "INSERT")
            (command "_.DDATTE" ename) )
          ((= kind "ARCALIGNEDTEXT")
            (command "_.ARCTEXT" ename) )
          ((= kind "RTEXT")
            (if (or (= 'USUBR AcetRText:edit) (load "rtext" nil))
              (AcetRText:edit elist)
              (princ "TEDIT: Cannot edit RTEXT objects.\n")
            )
          )
        )
        (entupd ename)
        (redraw ename 4)
        (acet-ui-progress -1)
      )
      (acet-ui-progress)
      (sssetfirst nil ss)
    )
  )
 
  (acet-error-restore)
  (princ)
)


(acet-autoload2	'("Rtext.lsp"	(AcetRText:edit ent)))
(princ)

Последний раз редактировалось Vova, 23.08.2017 в 20:46. Причина: в 2016 имя TEDIT (CHANGED TO TEXTEDIT) появилось в основном автокаде....
Vova вне форума  
 
Непрочитано 23.08.2017, 18:59
#10
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Vova, спасибо, правда не знал о такой команде.
Попробовал TEDIT и не понял разницы. При клике на блок с атрибутом она выдает то же окно, что и _ATTEDIT.
Не понял, какую задачу лисп должен решить?
skkkk вне форума  
 
Непрочитано 23.08.2017, 20:47
#11
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Да, attedit и tedit выдают одинаковое диал. окно, оно называется Edit attributes. Разница в том, что первая выдает диал окно сразу после клика на блок а вторая позволяет заселектировать много блоков (и текстов) последовательно и редактирование начинается после нажатия Enter. Диал. окна появляются в той же последовательности в которой проходило селектирование, что весьма удобно. Но это не столько важно для твоей задачи как то что если у блока неск. атрибутов, то в окне они видны все (про скрытые параметром видимости я не проверял)
Команда DDEDIT (в автокадах до 2016) и Textedit (от 2016) выдает окно Enhanced Attribute Editor, более сложное и менее удобное для твоей, как мне кажется, задачи (если я ее правильно понял)
Vova вне форума  
 
Непрочитано 23.08.2017, 21:12
#12
sertor

Геодезист
 
Регистрация: 23.05.2012
Ухта
Сообщений: 1,374


Offtop: Vova, в последнее время не часто можно видеть Вас на форуме. Пользуясь случаем, хочу сказать Вам спасибо за Вашу книгу. Уже больше десятка лет она у меня настольная.
И не в качестве "мебели", а именно востребованной справочной литературы, которая очень "упростила мне жизнь"! В сочетании с "Секретами... Д.Эббота
Миниатюры
Нажмите на изображение для увеличения
Название: DSC_0013.jpg
Просмотров: 144
Размер:	193.9 Кб
ID:	192637  
__________________
Как-то так.
sertor вне форума  
 
Непрочитано 24.08.2017, 02:42
1 | #13
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Цитата:
Сообщение от Vova Посмотреть сообщение
позволяет заселектировать много блоков (и текстов) последовательно и редактирование начинается после нажатия Enter. Диал. окна появляются в той же последовательности в которой проходило селектирование
Vova, да, интересный функционал. Так бы ни за что не догадался, что можно сразу много блоков выбрать. При этом изменяемый в данный момент блок подсвечивается. Жаль, что окно вылетает каждый раз в центре, загораживает вид под собой, приходится каждое отодвигать, если надо контролировать процесс визуально. Интересно, многим мог бы быть этот функционал полезен?

Набросал "макролиспик" (можно оформить в лисп-команду или просто в строке макросов вбить), который можно закрепить за операцией при двукратном нажатии на атрибут блока (и атрибут динамического блока):
Код:
[Выделить все]
(initdia)(if (= (length (nentselp (cadr (grread t)))) 2)(vl-cmdf "_ATTIPEDIT" (cadr (grread t))) (vl-cmdf "_ATTEDIT" (cadr (grread t))))
Если двойной клик будет по атрибуту, то он откроется в редакторе атрибутов (или текстовом, при ATTIPE=1), а если нет, то откроется вышеупомянутое окно.
Вместо этого окна можно реализовать, например, открытие блока в редакторе блоков. Или его расчленение
skkkk вне форума  
 
Непрочитано 24.08.2017, 16:27
#14
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Поставил это лисп-выражение в макрос, и ничего не получилось: сначала после однократного клика на атрибут он подсветился синим (то есть готов для редактирования). Затем при всех других попытках однократного и двойного клика как по атрибуту так и по блоку но мимо атрибута выдается диал. окно. Иногда все-таки подсвечивается синим но чаще диал окно...
Vova вне форума  
 
Непрочитано 24.08.2017, 17:21
#15
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Vova,
1. Макрос вбили в операцию при двукратном нажатии на атрибут блока или на атрибут дин.блока?
2. Нажимаете двойной клик с зажатым Ctrl? Надо без него. А синим атрибут подсвечивается при одном клике с Ctrl вроде? Я проверял на 2011-м.
Позже смогу проверить на 2015-м.
skkkk вне форума  
 
Непрочитано 24.08.2017, 19:44
#16
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Ctrl не влияет. Второй клик (из двойного) вообще не получается: после первого выводится окно. А ведь первые пробы давали подсветку синим... АС 2017
Vova вне форума  
 
Непрочитано 24.08.2017, 20:33
#17
sertor

Геодезист
 
Регистрация: 23.05.2012
Ухта
Сообщений: 1,374


У меня, (AutoCAD Civil 3D 2014 x64), лисп работает исправно, в точности так, как заявлено skkkk. Спасибо, на мой взгляд очень удобно!
Миниатюры
Нажмите на изображение для увеличения
Название: 2.gif
Просмотров: 104
Размер:	814.3 Кб
ID:	192704  
__________________
Как-то так.
sertor вне форума  
 
Непрочитано 25.08.2017, 00:03
#18
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от skkkk Посмотреть сообщение
1. Макрос вбили в операцию при двукратном нажатии на атрибут блока....?
Я не понимаю выражения "Макрос вбили в операцию..."
Я создал команду с данным выражением на палете. Что не так?
У Sertor в ролике данное выражение работает точно также как здесь
Vova вне форума  
 
Непрочитано 25.08.2017, 05:46
1 | #19
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Цитата:
Сообщение от Vova Посмотреть сообщение
Я создал команду с данным выражением на палете
Вот это и не так.
Смысл всего в том, чтобы данный макрос (точнее, в нашем случае макро-лисп) вызывался при двойном клике на блоке. И в зависимости от того, где именно на блоке был произведен даблклик, последуют разные события: если на атрибуте, то этот атрибут откроется в текстовом редакторе, а если на линии внутри блока или круге, то откроется окно редактирования всех атрибутов. Этот макро-лисп не рассчитан на вызов из палитры, поскольку при двойном клике происходит считывание координат курсора и анализ подобъекта блока, который находится в момент клика под курсором.


Цитата:
Сообщение от Vova Посмотреть сообщение
Я не понимаю выражения "Макрос вбили в операцию..."
В _CUI есть пункт "Операции при двукратном нажатии" ("Double Click Actions"), там из списка надо выбрать "Атрибут блока" (боюсь ошибиться в точном английском написании), раскрыть его и выбрать подпункт. Справа среди прочих появится окно для ввода макроса. Туда и вставляем это выражение.

Уж и не припомню сейчас, почему я решил выложить это выражение в виде макроса, то ли потому что тут Vova и я машинально подался к макросам, то ли потому что первые более простые предложенные мной решения были в виде макросов, то ли не хотелось возиться с локализацией переменных, но посмотрев видео sertor'а и увидев столько шума в командной строке, я решил исправиться и оформить всё это дело в функцию:
Код:
[Выделить все]
 ;;;    http://forum.dwg.ru/showthread.php?t=133685
(defun blc_dblclck_actions ( / pt_pick)
  (vl-load-com)
  (initdia)
  (setq pt_pick (cadr (grread t))) ;;; запоминаем координаты точки указания (двойного клика)
  (if (= (length (nentselp pt_pick)) 2) ;;; если в точке указания атрибут,
	(vl-cmdf "_ATTIPEDIT" pt_pick) ;;; то открываем его в текстовом редакторе или в редакторе атрибутов (переменная ATTIPE)
	(vl-cmdf "_ATTEDIT" pt_pick) ;;; а если не атрибут, то откроется окно редактора всех атрибутов
	;;; вместо вызова редактора всех атрибутов можно сделать тут что-то другое
  ) 
)
В операцию при двукратном нажатии в _CUI на атрибут блока и на атрибут динамического блока прописываем макрос:
Код:
[Выделить все]
(blc_dblclck_actions)
Добавление в макрос ^C^C (эмуляция Esc) не имеем смысла, поскольку если выбрано более одного объекта, то операция на двойное нажатие не сработает, а вместо этого откроется окно свойств (если было закрыто).
skkkk вне форума  
 
Непрочитано 25.08.2017, 17:06
#20
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от skkkk Посмотреть сообщение
И в зависимости от того, где именно на блоке был произведен даблклик, последуют разные события: если на атрибуте, то этот атрибут откроется в текстовом редакторе, а если на линии внутри блока или круге, то откроется окно редактирования всех атрибутов.
На макросе из н-р 13, введенном в CUI, у меня получилось, но после давлклика на атрибут синяя подсветка выходит с некоторой задержкой что раздражает. (простая команда _Attipedit с заданным ей алиасом АЕ работает мгновенно).
Что касается функции лиспа (н-р 19) то как ее использовать?
Получается, даблклик не дает возможность использовать окно EATTEDIT, необходимое для большинства стандартных работ в автокаде. Для его вызова теперь надо вызывать команду _eattedit (например, из меню на правой кнопке). Поэтому работа с даблкликом является полезной только для тех кто чаще всего редактирует только текст атрибутов, а не размеры или цвет, стиль и др., заложенное в EATTEDIT.
Vova вне форума  
 
Непрочитано 25.08.2017, 19:48
#21
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Цитата:
Сообщение от Vova Посмотреть сообщение
после давлклика на атрибут синяя подсветка выходит с некоторой задержкой что раздражает
Не пойму, какая синяя подсветка имеется в виду? Ручка? У меня ничего подобного не замечается на 2011-м - работает без тормозов.

Цитата:
Сообщение от Vova Посмотреть сообщение
Что касается функции лиспа (н-р 19) то как ее использовать?
Нужно обеспечить загрузку лиспа (лучше автозагрузку), в макросе на даблклик прописать
Цитата:
Сообщение от skkkk Посмотреть сообщение
Код:
[Выделить все]

(blc_dblclck_actions)
Цитата:
Сообщение от Vova Посмотреть сообщение
Получается, даблклик не дает возможность использовать окно EATTEDIT, необходимое для большинства стандартных работ в автокаде.
У меня получилось: в лиспе из #19 я всего лишь заменил ATTEDIT на EATTEDIT (см. гифку)
Миниатюры
Нажмите на изображение для увеличения
Название: 2017-08-25-at-19-39-01.gif
Просмотров: 63
Размер:	633.2 Кб
ID:	192761  
skkkk вне форума  
 
Непрочитано 27.08.2017, 15:34
#22
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Все получилось, спасибо SKKKK. Offtop: Я задал глупый вопрос в #20 – где применить функцию лиспа? Ведь я так и сделал как ты впоследствии сказал (поставить в автозагрузку). А вышло следущее: в твоем #19 нет возможности «выделить все», зато есть 4 кнопки и среди них «copy to clipboard”. Так вот, она у меня не сработала. Clipboard вместо текста лиспа упорно выдавал предыдущее сохранение. Текст в окне твоей функции не выделялся (Ctrl+A), а только все страница форума целиком. Пришлось скопировать всю страницу в ворд и сделать там вычленение лиспа. Его я и загрузил в файл чертежа, где делал пробы. И – ничего не получилось. Как я потом обнаружил, в лисп скопировалась и нумерация строк, что сделало его неработоспособным. После удаление ненужных цифр все заработало.
Еще раз спасибо.

В чистом автокаде дабл клик работает, вместе с клавишей Ctrl позволяя редактировать атрибут In place, без вызова диал. oкна EATTEDIT. Похоже, не работает только в вертикальных приложениях. SKKKK исправил это в данной теме интересным способом, раздвоив давл клик между атрибутом и геометрией блока: получаешь либо редактирование конкретного атрибута на месте, либо текстовой редактор всех атрибутов блока. Нельзя ли развить эту идею след. образом: с прижатым Ctrl двойной клик по атрибуту выдает редактирование на месте, без Ctrl вызывается редактор EATTEDIT, (точно как в чистом автокаде) и плюс к этому двойной клик по геометрии блока что-бы выдавал редактор текста всех блоков, как это происходит у тебя сейчас
----------------------------------------------------
Цитата:
Сообщение от sertor Посмотреть сообщение
Vova, в последнее время не часто можно видеть Вас на форуме. Пользуясь случаем, хочу сказать Вам спасибо за Вашу книгу. Уже больше десятка лет она у меня настольная.
И не в качестве "мебели", а именно востребованной справочной литературы, которая очень "упростила мне жизнь"! В сочетании с "Секретами... Д.Эббота
Offtop: Спасибо за хороший отзыв. Раньше было гораздо больше автокада, поэтому было больше и меня.
Я задержался с ответом потому что хотел сначала закончить тему и еще раз убедился что популярность автокада на форуме снизилась: раньше тема заинтересовала вы гораздо больше участников

Vova вне форума  
 
Непрочитано 28.08.2017, 04:31
#23
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Vova, к сожалению, в лиспе нет обработки нажатия Ctrl, есть только Shift (экспрессовская функция acet-sys-shift-down). С шифтом же ничего не выйдет, поскольку если он зажат, то происходит сброс выделения объектов и функция не сработает. Может, у кого есть или кто-то знает, где взять или как написать подобную функцию, допустим, на .NET, которая могла бы вызываться из-под лиспа и возвращала бы T, если Ctrl нажат и nil, если нет. Интуитивно чувствую, что подобная функция будет несложной в реализации, но у самого руки до нового языка пока не дошли. Я тоже был бы благодарен за такую функцию, поскольку уже знаю ей несколько других применений.
skkkk вне форума  
 
Непрочитано 25.02.2023, 23:55
#24
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Цитата:
Сообщение от skkkk Посмотреть сообщение
на некоторых блоках, где есть атрибуты в других наборах параметра видимости частенько вылезает не тот атрибут, на который "контрольно даблкликнул", а другой, скрытый в данном состоянии видимости; после этого вылезший атрибут больше не пропадает - приходится отменять сделанное
Подниму тему. Та же хрень недавно обнаружилась у коллеги. Я всегда редактирую атрибуты простым даблкликом, а у него - привычка делать это с зажатой клавишей Ctrl. Он решил, что проблема возникает, если атрибуты содержат поля. У вас атрибуты были с полями или без? Лечили через переключение видимости туда и назад, но всё равно это крайне неприятно. При редактировании атрибутов простым даблкликом без клавиши Ctrl проблема не проявляется. АвтоКАД 2014 англ СП1 и рус (СП???).
Где-то на форуме проскакивала мысль, что редактор блоков автокада криво отрабатывает копипаст. Т. е. все объекты в нём должны быть отрисованы "с нуля", а не через копирование-вставку, и атрибуты в том числе. Но это же нерационально! И не факт, что проблема касается только атрибутов, которые создавались в редакторе путём копирования и изменения ранее созданных атрибутов.
Кто-нибудь ещё сталкивался с подобным? В чём может быть причина?
Archeo вне форума  
 
Непрочитано 21.03.2023, 08:56
#25
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Похоже, дело действительно в полях. Коллега взял динамический блок основной надписи, в котором не было параметра видимости, а все атрибуты были обычными (одно- и многострочными). Вставил в атрибут поле с формулой - и при его редактировании с зажатой клавишей Ctrl курсор перескакивал на другие атрибуты с незаполненными значениями.
Archeo вне форума  
 
Непрочитано 21.03.2023, 12:07
#26
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,830
<phrase 1=


https://forum.dwg.ru/showpost.php?p=2027170&postcount=6
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 21.03.2023, 14:14
#27
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Поле было вставлено в однострочный атрибут. И далее курсор перескакивает на однострочные атрибуты
Archeo вне форума  
 
Непрочитано 22.03.2023, 06:19
#28
VitalyAF


 
Регистрация: 19.07.2005
Россия
Сообщений: 3,225


Цитата:
Редактирование атрибута дин. блока по двойному нажатию мышью.
А зачем, так щёлкать замучаешься! Выбрал сразу все нужные (по свойствам, именам...) и в палитре поменял... И + в палитре можно посмотреть свойства остальных блоков...

Последний раз редактировалось VitalyAF, 22.03.2023 в 06:25.
VitalyAF вне форума  
 
Непрочитано 22.03.2023, 08:47
| 1 #29
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Цитата:
Сообщение от VitalyAF Посмотреть сообщение
в палитре можно посмотреть свойства остальных блоков
Что значит - остальных? И в какой палитре? Свойств? Если блоки основных надписей размещены в пространстве листа (по одному на вкладке), то единовременно можно видеть свойства только одного блока...
Archeo вне форума  
 
Непрочитано 22.03.2023, 09:39
#30
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,830
<phrase 1=


Цитата:
Сообщение от VitalyAF Посмотреть сообщение
Выбрал сразу все нужные
А зачем тогда атрибуты нужны?
просто текстом в самом блоке
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 22.03.2023, 10:38
#31
VitalyAF


 
Регистрация: 19.07.2005
Россия
Сообщений: 3,225


Цитата:
Сообщение от Archeo Посмотреть сообщение
Если блоки основных надписей размещены в пространстве листа (по одному на вкладке),
Какие такие надписи, тема про множество точек (дин блоков) на плане... Отсюда и ответ! ))
Дальше пропускаем, не интересно... перескочили к основным надписям.
У меня когда-то было настроено так - правь откуда хочешь, смотри куда хочешь, сразу всё видно.
Причём переменные данные в полях м.б. внутри дин блока или просто на его фоне, в шаблоне.
Постоянные данные просто - текст в дин блоке.
Причём правка источника отражается на всех его полях (т.е. на тех листах, где эти поля вставлены), у вас разве не так???

Нажмите на изображение для увеличения
Название: ОснЗап_ДинБл_2023-03-22_11-13-35.png
Просмотров: 24
Размер:	93.4 Кб
ID:	254387

PS
Выбор автоматом дин блоков по именам, атрибутам, я уже упоминал, был lisp -ик такой, оч. выручал...

Последний раз редактировалось VitalyAF, 22.03.2023 в 11:24.
VitalyAF вне форума  
 
Непрочитано 22.03.2023, 17:30
#32
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Цитата:
Сообщение от VitalyAF Посмотреть сообщение
Какие такие надписи, тема про множество точек (дин блоков) на плане... Отсюда и ответ! ))
Как-то я забыл про это)
Цитата:
Сообщение от VitalyAF Посмотреть сообщение
правка источника отражается на всех его полях (т.е. на тех листах, где эти поля вставлены)
Конечно. Только у нас народ подшивками практически не пользуется, по разным причинам. Может, 2-3 человека, и то изредка. Поля у нас ссылаются на свойства самого чертежа (пока это, правда, в стадии тестирования). Над одним разделом иногда могут работать несколько исполнителей. Иногда возникает необходимость объединить несколько dwg-файлов в один (не спрашивайте, почему). На этот случай, например, есть пользовательские свойства Разработал1, Разработал2 и т. д. Исполнители заранее договариваются, кто под каким номером. И вот кто-нибудь редактирует поле в атрибуте с фамилией, чтобы переназначить его на другое пользовательское свойство, и по привычке делает это с зажатой клавишей Ctrl. Получает глюк. Не знаю, понятно ли описал.
Миниатюры
Нажмите на изображение для увеличения
Название: Снимок18.PNG
Просмотров: 18
Размер:	30.4 Кб
ID:	254412  
Archeo вне форума  
 
Непрочитано 22.03.2023, 18:26
#33
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,830
<phrase 1=


Цитата:
Сообщение от Archeo Посмотреть сообщение
по привычке делает это с зажатой клавишей Ctrl. Получает глюк.
Пусть использует ПКМ, тогда норм срабатывает
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 23.03.2023, 08:55
#34
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Цитата:
Сообщение от zenon Посмотреть сообщение
Пусть использует ПКМ
Изначальной причиной использования клавиши Ctrl называлось нежелание видеть дополнительное диалоговое окно редактирования. А по ПКМ оно есть. Фактически тот же двойной щелчок ЛКМ...
Archeo вне форума  
 
Непрочитано 23.03.2023, 09:36
#35
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,830
<phrase 1=


Цитата:
Сообщение от Archeo Посмотреть сообщение
Изначальной причиной использования клавиши Ctrl называлось нежелание видеть дополнительное диалоговое окно редактирования. А по ПКМ оно есть. Фактически тот же двойной щелчок ЛКМ...
Да ну?
Странно, а у меня работает почему-то
1 - зажать Ctrl, выбрать атрибут, сделать с ним всякое
2 - ПКМ, выбрать атрибут, сделать с ним всякое
3 - повторять пока не надоест
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 23.03.2023, 10:07
#36
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Цитата:
Сообщение от zenon Посмотреть сообщение
зажать Ctrl, выбрать атрибут
Дык вот же ж Когда он так делает, как раз и проявляется вышеуказанный глюк. Может, не всегда, но с высокой долей вероятности...
Archeo вне форума  
 
Непрочитано 23.03.2023, 10:54
#37
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,830
<phrase 1=


Цитата:
Сообщение от Archeo Посмотреть сообщение
Дык вот же ж Когда он так делает, как раз и проявляется вышеуказанный глюк. Может, не всегда, но с высокой долей вероятности...
ну так выйти без изменений, а далее ПКМ
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 23.03.2023, 11:52
#38
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Цитата:
Сообщение от zenon Посмотреть сообщение
выйти без изменений
При выходе по Esc глюк никуда не девается. Приходится либо переключать видимость, либо последовательно отменять некоторое количество действий, что не всегда приемлемо.
Archeo вне форума  
 
Непрочитано 23.03.2023, 12:45
#39
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,830
<phrase 1=


Цитата:
Сообщение от Archeo Посмотреть сообщение
При выходе по Esc глюк никуда не девается. Приходится либо переключать видимость, либо последовательно отменять некоторое количество действий, что не всегда приемлемо.
вроде понятно написал, с Ctrl, только первый раз, в последующем ПКМ (или повтор последней команды, если кнопа мыши не настроена)
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 23.03.2023, 12:55
#40
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Цитата:
Сообщение от zenon Посмотреть сообщение
только первый раз
Я ж и говорю, что человек даже с первого тыка с Ctrl может получить этот глюк...
Ну да ладно. Будем считать, что атрибуты - очередной сыроватый инструмент?
Archeo вне форума  
 
Непрочитано 23.03.2023, 13:10
#41
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,830
<phrase 1=


Цитата:
Сообщение от Archeo Посмотреть сообщение
Я ж и говорю, что человек даже с первого тыка с Ctrl может получить этот глюк
см.
Цитата:
Сообщение от zenon Посмотреть сообщение
ну так выйти без изменений, а далее ПКМ
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 06.04.2023, 12:25
#42
Archeo

архитектор
 
Регистрация: 02.04.2006
Беларусь
Сообщений: 348


Цитата:
Сообщение от Archeo Посмотреть сообщение
Цитата:
Сообщение от zenon
выйти без изменений
При выходе по Esc глюк никуда не девается
А как ещё можно выйти без изменений, кроме как по Esc? Это же не окно редактора блоков.
Archeo вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Редактирование атрибута дин. блока по двойному нажатию мышью.

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выключение редактирование атрибута блока ArtyLight AutoCAD 10 16.10.2019 15:28
Запрет на редактирование значения атрибута в составе вхождения блока hwd AutoCAD 10 26.01.2016 12:02
Lisp. авто-нумерация атрибута блока. DonJad LISP 10 26.10.2014 02:04
Присвоение атрибуту блока значения атрибута другого блока. shartal Программирование 4 14.11.2013 14:02
Непонятное поведение многострочного атрибута блока Нитонисе AutoCAD 2 11.09.2010 17:35