Что необходимо сделать, чтобы строки выводились по ходу выполнения программы, а не в самом конце, когда программа завершена???А может пойти другим путём, ну например, вывести кастомное диалоговое окошко в которое и вываливать всё необходимое: сообщения, прогрессбары и т.п.? Ведь в принципе командная строка стала вещью опциональной... её пользователь может вообще закрыть...
А если убрать "\r" из твоей строки?
Интересно почему при выполнении команд ввода пользовательских данных задержку вводить не требуется? При этом все сразу выводится.Потому что в этот момент:
Если мы делаем программу в среде AutoCAD, программа должна использовать ресурсы AutoCAD, а не создаватьНо это, безусловно, не догма. Возможно у этого варианта есть свои минусы. Но и плюсы тоже очевидны. Один из них самый и весомый это - окончательный уход от капризов разработчиков AutoCAD. Сами же видите, что идеология работы тех или иных контролов меняется от версии к версии, а это означает постоянное "приспосабливание" портируемого на новую версию AutoCAD Вашего исходного кода. Стоит ли игра свеч решать, конечно, Вам.
дополнительные окна, которые фактически дублируют системные.
Короче говоря бросай возится с acutPrintf - идеала ты не добьешься. Делай так, как делает сам AutoCAD при длительных вычислениях - используй ProgressBar: http://adndevblog.typepad.com/autocad/2012/05/progress-and-cancellation-of-long-objectarx-tasks.html
Но это, безусловно, не догма. Возможно у этого варианта есть свои минусы. Но и плюсы тоже очевидны. Один из них самый и весомый это - окончательный уход от капризов разработчиков AutoCAD. Сами же видите, что идеология работы тех или иных контролов меняется от версии к версии, а это означает постоянное "приспосабливание" портируемого на новую версию AutoCAD Вашего исходного кода. Стоит ли игра свеч решать, конечно, Вам.
Но для AutoCAD 2015-2016 это не получается сделать. Код сильно отличается...Потому что он использует командные методы?
Самая большая проблема была в изменении логики acedCommand с пользовательским вводом. Меняется много текста.Эх. Если бы сразу писал код без использования командных методов, то переход на AutoCAD 2015 перешёл бы безболезненно...
Эх. Если бы сразу писал код без использования командных методов, то переход на AutoCAD 2015 перешёл бы безболезненно...
Вы имеете ввиду заменить на функции acedCmd? Или имеются другие возможности?Я имел в виду не использовать готовые команды AutoCAD. Вот вместо команды вставки блока вы же воспользовались AcEdJig. Аналогично и в других моментах можно было бы поступить. Не так много есть мест, где нельзя заменить стандартную команду своим кодом, который будет работать не хуже, но зато гораздо более управляемый.