【发布时间】:2019-12-01 20:46:18
【问题描述】:
我被困在下面的代码中,因为我找不到任何解决方案来制作在“open_system”中定义的 Simulink 对象,该对象在我的 GUI 的标记为 networkselector 的按钮中有效。 handles.baseFileName 是所选文件,我通过单击打开文件窗口中的另一个按钮成功打开了该文件,但我不知道如何正确使用“open_system”中的“handles”调用操作才能打开该文件中名为 NetworkSelector 的 Simulink 模块。我也希望你能在这个问题上帮助我。
非常感谢您!
handles.baseFileName
open_system('handles.baseFileName/NetworkSelector')
% push button to open a Simulink file
function open_file_Callback(hObject, eventdata, handles)
startingFolder = 'C:\Users\xxx\Documents'
if ~exist(startingFolder, 'dir')
% If that folder doesn't exist, just start in the current folder.
startingFolder = pwd;
end
% Get the name of the mat file that the user wants to use.
defaultFileName = fullfile(startingFolder, '*.slx')
[handles.baseFileName, folder] = uigetfile(defaultFileName, 'Select a Simulink file')
if handles.baseFileName == 0
% User clicked the Cancel button.
return;
end
fullFileName = fullfile(folder, handles.baseFileName)
[name] = fileparts(fullFileName)
open_system(fullfile('C:\Users\xxx\Documents', handles.baseFileName), 'tab')
guidata( hObject, handles )
% push button to open a Simulink block named NetworkSelector
function networkselector_Callback(hObject, eventdata, handles)
handles.baseFileName
open_system('handles.baseFileName/NetworkSelector')
guidata( hObject, handles )
Error using GUI>networkselector_Callback (line 711)
'handles.baseFileName/NetworkSelector' is not a valid
Simulink object name and no matching file found.
Error in gui_mainfcn (line 95)
feval(varargin{:});
Error in GUI (line 43)
gui_mainfcn(gui_State, varargin{:});
Error in
matlab.graphics.internal.figfile.FigFile/read>@(hObject,eventdata)GUI('networkselector_Callback',hObject,eventdata,guidata(hObject))
- Show complete stack trace
Error while evaluating UIControl Callback.
【问题讨论】:
-
您能否格式化您的代码以使其可读。
-
感谢 Jared 的编辑。我确实正确地提出了我的问题,但是在单击“发布问题”后,它并没有以正确的顺序出现。
标签: matlab user-interface button simulink