问题
如何为没有桌面和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行)。解决标题设置问题的方法是一旦裸机窗口显示出来,向终端显示一个字符串,但是有限的缓冲区防止第一行持久存在。
如果您有更好/替代的方法来实现这些目标,我们将不胜感激,并感谢您花费时间阅读/回答。谢谢并祝您一天愉快。