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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > LISP :: не отображается информация в командной строке

LISP :: не отображается информация в командной строке

Ответ
Поиск в этой теме
Непрочитано 23.08.2011, 09:40 #1
LISP :: не отображается информация в командной строке
Игорь Костюкович
 
Минск
Регистрация: 31.07.2009
Сообщений: 40

Столкнулся со следующей проблемой:
при обработке цикла, занимающей продолжительное время, решил дать в комстроке сообщение пользователю, мол не нервничайте и не жмите кнопки - прцесс требует времени. Уж кажется чего проще: до начала цикла
Код:
[Выделить все]
 (princ "Для выполнения процесса требуется время...")
По окончании цикла
Код:
[Выделить все]
 (princ "Готово")
Но в результате обе строки с сообщениями выдаются после завершения работы функции.
С чего бы это?...
__________________
Там всё есть для счастья, меня там только нет,
Так это значит, что я там - буду!
Просмотров: 2460
 
Непрочитано 23.08.2011, 13:04
1 | #2
TararykovDG

Программист-энтузиаст
 
Регистрация: 17.07.2009
Воронеж
Сообщений: 575


Игорь Костюкович, по-моему, что-то подобное уже обсуждалось на форуме, но не помню где и как разрешилось, предлагаю такой вариант
Код:
[Выделить все]
 
(setvar 'modemacro "Для выполнения процесса требуется время...")
По окончании цикла
Код:
[Выделить все]
 
(setvar 'modemacro "")
__________________
cadtools
TararykovDG вне форума  
 
Непрочитано 23.08.2011, 13:28
1 | #3
dimitriy_popov


 
Регистрация: 27.07.2010
Сообщений: 25
Отправить сообщение для dimitriy_popov с помощью Skype™


Попробуй добавь после каждой
Код:
[Выделить все]
 (princ "...........")
функцию
Код:
, она создает пустую строчку в командной строке. Должно получиться. А лучше выложи lisp или его фрагмент между (princ "....").
__________________
Конструктор КМД, Lisp
dimitriy_popov вне форума  
 
Автор темы   Непрочитано 23.08.2011, 14:47
#4
Игорь Костюкович


 
Регистрация: 31.07.2009
Минск
Сообщений: 40


TararykovDG, modemacro не фурычит...
dimitriy_popov, print работает. Код интереса не представляет: простой цикл перебора объектов (примитивов) чертежа.

Спасибо за помощь.
__________________
Там всё есть для счастья, меня там только нет,
Так это значит, что я там - буду!
Игорь Костюкович вне форума  
 
Непрочитано 23.08.2011, 14:52
#5
Кулик Алексей aka kpblc
Moderator

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


modemacro не может не фурычить. Чего-то у тебя не то с кодом. МОжет быть, вообще до princ дело не доходит?
Да, кстати! А где переводы строк-то?
Код:
[Выделить все]
 (princ "\nДля выполнения процесса требуется время...")
; <...>
(princ "\nГотово")
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 23.08.2011, 15:35
#6
TararykovDG

Программист-энтузиаст
 
Регистрация: 17.07.2009
Воронеж
Сообщений: 575


Цитата:
Сообщение от Игорь Костюкович Посмотреть сообщение
TararykovDG, modemacro не фурычит...
Как сказал Кулик Алексей aka kpblc,
Цитата:
modemacro не может не фурычить
Просто modemacro отображает текстовую последовательность в строке состояния, а не в комадной строке, см. рисунок
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.JPG
Просмотров: 60
Размер:	11.9 Кб
ID:	65021  
__________________
cadtools
TararykovDG вне форума  
 
Непрочитано 23.08.2011, 15:54
#7
ShaggyDoc

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


Цитата:
А где переводы строк-то?
И в конце надо
Код:
[Выделить все]
 (princ "\nДля выполнения процесса требуется время...\n")
Это в каких-то версиях потребовалось. А вообще всегда в цикле princ писал текс надежно.
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 23.08.2011, 16:21
#8
Игорь Костюкович


 
Регистрация: 31.07.2009
Минск
Сообщений: 40


Кулик Алексей aka kpblc, тем не менее...
Первый princ стоит сразу после defun.
Переводы строк никак не влияют на данный процесс.
__________________
Там всё есть для счастья, меня там только нет,
Так это значит, что я там - буду!
Игорь Костюкович вне форума  
 
Непрочитано 23.08.2011, 16:53
1 | #9
dimitriy_popov


 
Регистрация: 27.07.2010
Сообщений: 25
Отправить сообщение для dimitriy_popov с помощью Skype™


Можно добавь строку
Код:
[Выделить все]
 (princ (strcat "\r Выполнено " (itoa temp) "%"))
внутри цикла, и будет видно текущее выполнение (на пример в процентах), где temp - рассчитывается внутри цикла.
__________________
Конструктор КМД, Lisp

Последний раз редактировалось dimitriy_popov, 23.08.2011 в 22:03.
dimitriy_popov вне форума  
 
Непрочитано 23.08.2011, 19:01
1 | #10
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


я обычно пользуюсь пользуюсь prompt

(prompt "\nДля выполнения процесса требуется время...")

Цитата:
Сообщение от dimitriy_popov Посмотреть сообщение
Можно добавь строку
если стоят et - acet-ui-progress... или в doslib есть схожая функция
gomer вне форума  
 
Непрочитано 31.08.2011, 10:25
1 | #11
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,701
Отправить сообщение для Do$ с помощью Skype™


Если от подвисаний не избавиться никак, то есть arx приложение от А.Ривилиса, называется ProgressBars. По-моему, это лучшее решение. Поиск найдет .
Do$ вне форума  
 
Автор темы   Непрочитано 31.08.2011, 10:49
#12
Игорь Костюкович


 
Регистрация: 31.07.2009
Минск
Сообщений: 40


Do$, спасибо.
Именно этим методом проблема и решена.
А.Ривилису отдельное спасибо...
__________________
Там всё есть для счастья, меня там только нет,
Так это значит, что я там - буду!
Игорь Костюкович вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > LISP :: не отображается информация в командной строке



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AutoCAD Civil 3D 2011. Лишнии сообщения в командной строке! Shaft Вертикальные решения на базе AutoCAD 2 06.07.2011 14:32
Имитация нажатия Enter при вводе строкового параметра команды в командной строке. smallmazila7 Программирование 7 18.11.2010 06:05
AutoCAD2006 - последние набранные цифры в командной строке v_glazkov AutoCAD 3 06.08.2008 15:19
Глюк отображения информации в командной строке kfish AutoCAD 1 14.05.2008 13:40
как избавиться от лишних записей в командной строке? Александер Программирование 6 07.09.2005 17:43