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

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

Закрытие чертежа кнопкой мыши или горячей клавишей

Ответ
Поиск в этой теме
Непрочитано 24.09.2013, 21:37 #1
Закрытие чертежа кнопкой мыши или горячей клавишей
dim5678
 
Регистрация: 29.07.2012
Сообщений: 98

Бывают такие ситуации когда нужно быстро просмотреть кучу чужих чертежей. Но при этом закрывая их не подыматься в верхнюю вкладку "Окно" и щелкать "закрыть" , далее следуют вопрос сохранять -"нет". В итоге мы делаем 3и движения. Есть такая команда _close ну да можно назначить кнопку, ну опять же придется жать не сохранять. Подскажите как можно сделать так чтобы при нажатии одной кнопки -к примеру F12 просто бы закрывался чертеж без вопросов о сохранении? Заранее всем благодарен. Второй вариант - возможно можно загнать данную функцию в меню свойств меню мыши. Т.е обычно при нажатии правой клавиши мыши выскакивает панель с множествами функциями - такие как свойства, итд. хорошо бы туда кнопочку закрыть без сохранения))).
Просмотров: 14060
 
Непрочитано 24.09.2013, 21:38
1 | #2
Кулик Алексей aka kpblc
Moderator

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


Ctrl+F4, Tab, Enter
Либо использовать сторонние просмотрщики типа DWGTrueView / Bentley XM View etc
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 24.09.2013, 21:41
#3
dim5678


 
Регистрация: 29.07.2012
Сообщений: 98


Оперативно, я просто чуть со стула не упал как вы быстро ответили))) Спасибо большое.
dim5678 вне форума  
 
Автор темы   Непрочитано 04.01.2014, 17:19
#4
dim5678


 
Регистрация: 29.07.2012
Сообщений: 98


Прошу прощения хотел бы вернутся к данному вопросу.
Ctrl+F4, Tab, Enter все работает только при условии, если чертеж не был просмотрен, а был лишь на время открыт, даже прокручивание чертежа колесом мыши просмотр его без единого изменения считается измененным файлом. При нажатии любой из этих клавиш автокад запрашивает сохранять ли чертеж или нет и после выбора "нет" идет команда _quit и идёт закрытие открытого чертежа.
Вопрос как все таки объединить команду _quit и нажатие кнопки "нет" не сохранять в одну единую команду? В тоже время не закрывался бы весь автокад, а именно открытый просмотренный чертеж. Всем заранее спасибо за ответы и с новым годом.
dim5678 вне форума  
 
Непрочитано 04.01.2014, 18:05
1 | #5
skkkk


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


Какая версия AutoCAD'a? Потому как в разных версиях работают разные конструкции. В 2011-м работает кнопка с таким макросом:
Код:
[Выделить все]
^C^C(command "_close" "_yes")
Несмотря на кажущуюся нелогичность, чертеж сохраняться не будет, так как при таком вызове выводится запрос:
Цитата:
Вы действительно хотите отказаться от всех изменений в чертеже? <Н>
skkkk вне форума  
 
Непрочитано 04.01.2014, 18:17
#6
Profan


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


Этот макрос работает и в предыдущих версиях (2006, 2008). А вот в версии 2004 не работает.
Profan вне форума  
 
Автор темы   Непрочитано 04.01.2014, 20:02
#7
dim5678


 
Регистрация: 29.07.2012
Сообщений: 98


skkkk при много Вам благодарен. Спасибо!!!
dim5678 вне форума  
 
Непрочитано 04.01.2014, 21:23
1 | #8
Nike

Шаражпроектхалтурмонтаж
 
Регистрация: 29.10.2004
Талды-Париж
Сообщений: 5,991




Код:
[Выделить все]
 	[_Button("Сохранить все", "all-save.bmp", "all-save.bmp")]^C^C(c:all-save)

	[_Button("Выйти с сохранением", "Quit-save.bmp", "Quit-save.bmp")]^C^C(c:all-save)(command "_.vbastmt" "application.quit ")
	[_Button("Выйти без сохранения", "Quit-no-save.bmp", "Quit-no-save.bmp")]^C^C(c:CloseWithoutSaveChanges)

	[_Button("Закрыть все файлы с сохранением, свернуть AutoCAD", "Close-all-save-min.bmp", "Close-all-save-min.bmp")]^C^C(c:close-all-save)
	[_Button("Закрыть все файлы  без сохранения, свернуть AutoCAD", "Close-all-no-save-min.bmp", "Close-all-no-save-min.bmp")]^C^C(c:close-all-no-save)

	[_Button("Закрыть файл с сохранением, свернуть AutoCAD", "Close-save-min.BMP", "Close-save.BMP")]^C^C(command "_zoom" "_e")(vla-put-windowstate (vlax-get-acad-object) acmin)(command "_.vbastmt" "ThisDrawing.Close True")
	[_Button("Закрыть файл без сохранения, свернуть AutoCAD", "Close-no-save-min.BMP", "Close-no-save.BMP")]^C^C(vla-put-windowstate (vlax-get-acad-object) acmin)(command "_.vbastmt" "ThisDrawing.Close False")

	[_Button("Закрыть файл с сохранением", "Close-save.BMP", "Close-save.BMP")]^C^C(command "_zoom" "_e")(command "_.vbastmt" "ThisDrawing.Close True")
	[_Button("Закрыть файл без сохранения", "Close-no-save.BMP", "Close-no-save.BMP")]^C^C(c:close-file-no-save)

	[_Button("Свернуть", "min.BMP", "min.BMP")]^C^C(vla-put-windowstate (vlax-get-acad-object) acmin)
	[_Button("Папка проекта", "folder.BMP", "folder.BMP")]^C^C(STARTAPP "explorer" (STRCAT "/e," (GETVAR "dwgprefix")))
	[_Button("dwg.ru", "ie.BMP", "ie.BMP")]^C^C(STARTAPP "C://Program Files//Internet Explorer//iexplore.exe forum.dwg.ru")
	[_Button("Папка SB", "SB.bmp", "SB.bmp")]^C^CSBF
	[--]
Вложения
Тип файла: zip Menu Exit.zip (40.4 Кб, 209 просмотров)

Последний раз редактировалось Nike, 29.11.2019 в 21:50.
Nike вне форума  
 
Автор темы   Непрочитано 05.01.2014, 08:05
#9
dim5678


 
Регистрация: 29.07.2012
Сообщений: 98


уххх ты)))) четко...Спасибо Nike.
dim5678 вне форума  
 
Непрочитано 05.01.2014, 09:30
#10
Кулик Алексей aka kpblc
Moderator

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


Nike, постарайся поменьше использовать VBA-коды: http://adn-cis.org/autocad,-vba-i-proizvoditelnost.html
Можно же вместо просто vla-close использовать нечто типа (vla-close doc :vlax-true FileName) или (vla-close doc :vlax-false) ; да и для приложения можно использовать метод (vla-quit app)...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 09.01.2014, 12:46
#11
Astartes

Котло- и реакторостроение
 
Регистрация: 25.02.2010
Барнаул
Сообщений: 807


Как вариант, воспользоваться примочкой idwgtab. Она добавляет вкладки чертежей в автокад. Сама по себе штука полезная (для меня лично) Там можно выделить все вкладки, нажать закрыть и для всех чертежей поставить галочку на "не сохранять". В результате, все чертежи закроются скопом без лишних движений.
__________________
AutoCad 2011 -> AutoCad 2013
Astartes вне форума  
 
Непрочитано 09.01.2014, 13:01
#12
vl74


 
Регистрация: 25.10.2010
Сообщений: 868


Цитата:
Сообщение от dim5678 Посмотреть сообщение
в меню свойств меню мыши
В современных "геймерских" мышах можно макросы повешать на кнопки, довольно удобно.
Я поставил сочетание "CTRL+1" в автокаде.
vl74 вне форума  
 
Непрочитано 16.02.2017, 11:28
#13
gve2005


 
Регистрация: 13.02.2009
Сообщений: 25


Здравствуйте

А какой макрос нужно составить, чтобы при нажатии по кнопке все чертежи, открытые в Автокад сохранялись без окон предупреждения и сразу же закрывались?

----- добавлено через ~2 ч. -----
сам разобрался. спасибо
gve2005 вне форума  
 
Непрочитано 16.02.2017, 18:39
#14
skkkk


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


gve2005, на форумах принято говорить "Б"
skkkk вне форума  
 
Непрочитано 16.07.2017, 11:41
#15
Нюк

ЖД
 
Регистрация: 18.04.2013
Сообщений: 200


как вариант - просто убить программу в диспетчере задач.

Но изредка (при зависаниях или других ЧП) после такого сноса в Автокаде слетают какие-нибудь настройки - то лента не запускается, то шаблоны начинают криво подгружаться. Я в таком случае переустанавливаю прогу, быстрее, чем найти способ решения возникших неполадок))
Вот и прикиньте что легче. Закрывать вручную чертежи или раз в 3-4 месяца переставить Акад)))
Нюк вне форума  
 
Непрочитано 11.06.2020, 13:25
#16
Spasatel

студент
 
Регистрация: 27.01.2016
Сообщений: 5


Nike, а как запустить это дело?
Я скачал архив, распаковал, заимствовал панель из файла адаптации, загрузил lisp. Теперь когда нажимаю кнопку закрытия всех вкладок без сохранения выдается no fuction definition
Spasatel вне форума  
 
Непрочитано 11.08.2020, 02:13
#17
Interminable


 
Регистрация: 15.05.2019
Сообщений: 7


Всем здравствуйте,подскажите пожалуйста как установить правильно lisp из поста #8.
Закинул в автокад, а дальше не понял, что делать? Как вызвать эту менюшку с кнопками для закрытий чертежей.
Interminable вне форума  
 
Непрочитано 11.08.2020, 07:56
#18
trir


 
Регистрация: 18.12.2010
Сообщений: 5,051


НПИ
trir вне форума  
 
Непрочитано 02.06.2021, 15:55
#19
kosmi


 
Регистрация: 16.10.2007
Сообщений: 23


Код:
[Выделить все]
;;
;; без проверки значений
;; "DWGTITLED"
;; "WRITESTAT"
;; "REFEDITNAME"
;; "DBMOD"
;;
;; работает в ACAD 2020
;;

;; всё везде сохранить и закрыть ACAD
(defun C:QQ ()(*savequit* T T T)(princ))

;; сохранить текущий документ и оставить открытым, остальные закрыть c сохранением
(defun C:QQA ()(*savequit* T T nil)(princ))

;; сохранить текущий документ и оставить открытым, остальные закрыть без сохранения
(defun C:QQZ ()(*savequit* T nil nil)(princ))

;; ничего не сохранять, просто закрыть все документы кроме текущего
(defun C:QQC ()(*savequit* nil nil nil)(princ))

;; закрыть ACAD ничего нигде не сохраняя
(defun C:QQX ()(*savequit* nil nil T)(princ))

(defun *savequit* (KEY1* KEY2* KEY3* / acapp active_doc doc)
  (setvar "cmdecho" 0)         
  (setq active_doc (vla-get-activedocument (setq acapp (vlax-get-acad-object))))
  (if (= 0 (getvar "SDI")) 
    (progn  ;; многодокументный режим                                                
      (if KEY1* (vl-catch-all-apply (function vla-save)(list active_doc)))                 
      (vlax-for doc (vla-get-documents acapp)        
        (if (not (equal doc active_doc))                                                                                   
          (vl-catch-all-apply (function vla-close)
            (list doc (vlax-make-variant (if KEY2* :vlax-true :vlax-false)))                                                                      
          )                                          
        )
        (vlax-release-object doc)  
      )    
      (if KEY3* (vla-sendcommand active_doc "(command \"_.QUIT\" \"_Y\") "))      
    )
    (progn ;; однодокументный режим
      (if KEY1* (vl-catch-all-apply (function vla-save)(list active_doc)))
      (if KEY3* (vl-cmdf "_.QUIT" "_Y")) 
    )
  ) ;;...if
  (vlax-release-object active_doc) 
  (vlax-release-object acapp) 
  (princ)
)
kosmi вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Закрытие чертежа кнопкой мыши или горячей клавишей

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AutoCAD 2008 при двойном щелчке левой кнопкой мыши не редактируется текст la-minor AutoCAD 30 17.06.2022 17:31
fatal error при закрытие единственного чертежа в режиме visible=false Naigsa Программирование 9 26.05.2012 23:42
Приближение(отдаление) к прицелу мыши, а непросто в центр чертежа. Autocad 2012 Вилянка AutoCAD 1 21.12.2011 19:52
Кнопка {CLOSE} закрытие чертежа в автокаде 2009 sashzxc AutoCAD 2 30.07.2009 11:16
повтор нажатия пользовательской кнопки Enter-ом или правой кнопкой мыши Victorovich Программирование 6 05.06.2008 12:05