3

当命令完成时,有没有办法将 matlab 设置为窗口的前台?我可以通过执行 dos() 看到它的发生,但我不知道窗口管理是如何工作的?也许有更好的方法?有人吗?

4

2 回答 2

7

两种选择。也不完全是你所要求的。

选项 1:打开一个新图窗。

   figure();
   imagesc(processingDoneSplashImage);

如果您想变得花哨,请将其放入带有计时器的脚本中,并在亮绿色和亮红色之间闪烁图像....

选项2:我对您问题的解决方案。(我觉得弹出窗口非常烦人。)我把这个函数调用放在我长时间运行的脚本的末尾,计算机会告诉我它什么时候完成处理......

function [ ] = matSpeak( textToSpeak )
%matSpeak takes some text, and outputs onto the speaker the text,
% using the .Net SpeechSynthesizer.
%  This only works on Windoze. 

if ~exist('textToSpeak','var')
    textToSpeak = 'Your processing has completed.';
end

NET.addAssembly('System.Speech');
speak = System.Speech.Synthesis.SpeechSynthesizer;
speak.Volume = 100;
speak.Speak(textToSpeak);

end
于 2013-06-04T16:49:14.867 回答
2

为什么不将 Growl 用于通知窗口?

cmd = ['/usr/local/bin/growlnotify -m ' messagestr];
system(cmd);

当然,对于 Windows,您需要修复growlnotify二进制文件的路径。

于 2013-06-04T18:09:07.477 回答