2017-02-10 54 views
2

我有一个GUI和一个图像。 GUI打开一个消息框,然后打开主GUI,我有一个handles.axesGUI显示图像。 当我编译代码时,如何使图像位置文件夹与编译代码的位置相同(可以在每台计算机中更改)?在编译的GUI中的图像位置 - MATLAB

% --- Executes just before DiaCurvBeta0_6 is made visible. 
function Testz_OpeningFcn(hObject, eventdata, handles, varargin) 
% This function has no output args, see OutputFcn. 
% hObject handle to figure 
% eventdata reserved - to be defined in a future version of MATLAB 
% handles structure with handles and user data (see GUIDATA) 
% varargin command line arguments to DiaCurvBeta0_6 (see VARARGIN) 
set(handles.infoTable, 'data',[]); 
% Choose default command line output for DiaCurvBeta0_6 
handles.output = hObject; 

% Update handles structure 
guidata(hObject, handles); 

hMsg=msgbox({'TEST'} ,'About','modal'); 
Children = get(hMsg,'Children'); 
OKButton = Children(1); 
set(OKButton,'BackgroundColor',[0.8 0.8 0.8]) 
uiwait(hMsg) 
imshow('E:/CC.png','Parent',handles.axesGUI) 

回答

1

在你的功能,你可以使用mfilename来确定你的函数的路径:

f = mfilename('fullpath'); 
f = fileparts(f); 
f = fullfile(f,'CC.png'); 

imshow(f,'Parent',handles.axesGUI) 

...假设CC.png是一个文件旁边的M-文件。在MATLAB编译器中,你可以指定你希望这个资源文件包含在已部署的包中。