问题
如何为没有桌面和没有 java 的 MATLAB 窗口设置命令窗口标题?
- 主要兴趣的 Matlab 版本:2012a 及更高版本
- 所需操作系统:主要是 Windows (XP);更一般的东西
- 理想的解决方案:在下面描述的“mat”函数生成的结果窗口中设置标题。
- 替代解决方案:在下面描述的“matj”函数生成的窗口中设置命令窗口标题。
背景
我有匿名函数来启动“准系统 MATLAB”窗口(每个都从我的主 MATLAB 窗口的终端执行。
mat = @(sCmd) system(['matlab.exe -nodesktop -nosplash -nojvm -r "' sCmd ';" &']);
matj = @(sCmd) system(['matlab.exe -nodesktop -nosplash -r "' sCmd ';" &']);
"matj" 窗口比 "mat" 生成的窗口更占用 RAM 内存。
我知道在启用 java 的窗口中设置标题的技术,例如我的以下(奇怪的是,它在“matj”窗口中不起作用):
cmdtitle = @(sT) com.mathworks.mde.desk.MLDesktop.getInstance.getClient('Command Window').getTopLevelAncestor.setTitle(sT)
为什么我需要这个/我在做什么
我将内存密集型非绘图 MATLAB 任务从“主”MATLAB 窗口(完全加载了 java 和其他花里胡哨)分配给这些准系统窗口。将标题设置为这些将允许我给他们一个关于该窗口分配任务的视觉标签。
此外,能够在这些准系统窗口中扩展显示的文本缓冲区会很有帮助(在我的计算机上,它们似乎限制为 ~500 行)。标题设置问题的解决方法是在准系统窗口显示后向终端显示一个字符串,但有限的缓冲区会阻止第一行持续存在。
非常感谢有关实现这些目标的更好/替代方法的建议,以及您阅读/回答的时间。谢谢你,美好的一天。