How to open a userdefined simulink model from a GUI
4 次查看(过去 30 天)
显示 更早的评论
Hi Guys,
i am working on a GUI that has to get access to simulink models. Now i want the user to choose an existing model when pressing the edit-button! The callback of this edit button is shown here:
function edit__Callback(hObject, eventdata, handles)
% hObject handle to edit_ (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
startingFolder = 'C:\Users\powersyslab\Desktop\Draw'
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, '*.mdl')
[baseFileName, folder] = uigetfile(defaultFileName, 'Select a mdl. file')
if baseFileName == 0
% User clicked the Cancel button.
return;
end
Unfortunately the Simulink model is not opened when i run it this way. I can choose a model but when i doubleclick on it, nothing happens. Thats why i added
open_system('C:\Users\powersyslab\Desktop\Draw\baseFilename','tab')
to the end of the code...I want to start the simulink model by accessing it directly with its name chosen from the user. The name is saved in baseFilename. When i do so i get the error
'C:\Users\John\Desktop\Draw\baseFilename' is not a valid Simulink object name and no matching file found.
When i read baseFilename it says
*baseFileName =
Sample_1.mdl*
How can i make that work? i dont know how to start the model Sample_1.mdl correctly!
Would be glad for your help!
Best regards, John
0 个评论
采纳的回答
Walter Roberson
2015-9-22
open_system(fullfile('C:\Users\powersyslab\Desktop\Draw', baseFilename), 'tab')
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!