我从另一个程序(Vicon Nexus 2.3)调用脚本。这个其他程序将启动Matlab,然后运行脚本。
脚本的第一件事是调用uigetfile()。但是,由于Nexus程序具有Windows焦点,因此uigetfile()窗口会出现在所有内容之后。有没有办法在不使用鼠标的情况下把它带到前面?
我试过了:
shg
uistack()
但我认为这里的问题是Windows焦点,而不是uistack。有人知道这是否可能?
答案 0 :(得分:3)
您需要做的是在打开uigetfile
对话之前将Matlab放在前面。你可以这样做,例如致电commandwindow
:
commandwindow();
uigetfile();
通过从命令行启动Matlab并在打开后覆盖其他一些窗口进行测试,但在执行pause
之后的代码之前:
matlab -r "pause(3); commandwindow(); uigetfile();"