3

我只使用 Matlab 一年多了,我遇到了一个我似乎无法克服的问题。

我已经使用 Guide 创建了几个 GUI。有一个主 GUI 和一些“子”GUI,可以使用下拉菜单从主 GUI 打开。

当 GUI 位于同一目录中时,所有这些都可以正常工作。但是,我正在尝试组织它,以便主 GUI 在一个文件夹中,而它打开的所有 GUI 都在另一个文件夹中。理想情况下,我正在努力做到这一点,以便我可以从主 GUI 打开多个 GUI 并操作它们,同时能够随时打开新的 GUI。


我尝试了几种不起作用的方法,包括以下方法:

运行('./directory1/sub_gui1');

这可以打开 GUI,但不允许我实际使用 GUI,因为我在错误的目录中。

运行('./directory1/sub_gui1'); cd('./directory1');

这可以打开 GUI 并允许我使用它,但它使我不能再使用主 GUI,因为我不再在它的目录中。

有没有办法解决这个问题?

4

2 回答 2

4

您可以设置路径,以便 Matlab 可以找到所有子 GUI,或者您可以将它们放在主 GUI 目录的子目录中,称为private

于 2013-10-24T21:39:15.033 回答
1

addpath(genpath('./directory1/'))会将 directory1 和所有子文件夹添加到 MATLAB 路径。

您可能想在“主 GUI”中添加一条线来做类似的事情。例如,您可以使用mfilename找到主要 gui 函数的位置并将其文件夹添加到路径中。

我也喜欢 Molly 的私人文件夹创意。

于 2013-10-24T21:56:14.777 回答