3

我正在运行一个fprintf用于打印到控制台的脚本。有时控制台停止向下滚动到打印的最新行,我需要手动下拉滚动条才能看到最后一行,这很烦人,因为我想查看控制台和我在每次迭代时绘制的一些图形。

有没有人可以解决这个问题?

4

1 回答 1

1

以下内容已发布到 mathworks,可能会有所启发:

R2011a 中命令行窗口的行为似乎发生了变化,因此如果 MATLAB 忙,它不会自动滚动到换行符的底部。

如果我在我闪亮的新 MATLAB 7.12.0.635 中运行它:

clc, for a=1:100,fprintf('%i\n',a);pause(0.1);end

...计数器将运行到我的 CW 的底部,然后在垂直滚动条增长时继续运行。我沉闷的 7.11.0.584 (R2010b) 和我的 linux 版本(任何一个版本)都不会这样做;命令窗口在换行符上向下滚动。这是故意的新行为还是错误?如果它是一个功能,我该如何控制它?

编辑:好的,我很确定这是一个功能。如果循环中的任何内容在计算上不是非常昂贵并且不调用系统命令或 mex 代码,它实际上让我可以选择冻结滚动或通过移动滚动条来释放它(即,如果滚动条位于底部,它会像以前一样更新)。似乎这并不总是有效。

Edit2:此外,控制它的技巧仅适用于 Windows 7。

于 2012-08-02T14:01:49.953 回答