问题描述:
在中望老版本命令行窗口是可以循环打印acutPrintf(_T("\rProcessing... %3d%%"), i);输出信息,类似与Window系统的cmd界面打印信息,由于动态刷新窗体效率较低
如遇到大批量的内容需要打印时,时间太久影响功能使用,中望新版本为了提高命令行显示效率做了优化,只在命令行输入框中做打印刷新。
目前有一些用户需求想在命令行历史窗口动态打印数据,如为了展示一步步算量计算过程等需求。
步骤指引:
目前研究了一种方法大致可以做到这个效果:
void helloworld()
{
for (int i = 0; i <= 1000; i++)
{
acutPrintf(_T("\rProcessing... %3d%%"), i);
acedUpdateDisplay();
MSG msg;
while (::PeekMessage(&msg, nullptr, 0, 0, PM_REMOVE))
{
::TranslateMessage(&msg);
::DispatchMessage(&msg);
}
Sleep(30);
}
acutPrintf(_T("\nDone!\n"));
}
达到的效果:
| 英文空间链接 |
|---|
★如何在命令行窗口动态显示打印数据:https://confluence.zwcad.com/pages/viewpage.action?pageId=298355827