Run script file from App designer

I succeed in run my script file from the app designer but the problem is, it runs in command window and when I ask to show result it shows the old one on the workspace

13 个评论

Why are you using a script for anything serious? You should be using functions instead, as those provide a stable interface.
Actualiy I'm using functions and call them in these scripts, I don't know if I can call func in func !
You can absolutely call a function from within a function. So you don't need to use a script at any point.
ok, I did that but I stil have the same problem, app designer give me error because it can't find 'result' in the workspace to show it in the editfield
In the function where you are computing the result, copy it to main workspace using eval(). e.g. if result is a scalar, eval(['result=' num2str(result)]). This would make the variable available in main workspace. Another way is to use global variables.
Note that both these are less efficient ways of dealing with variable scopes.
How are you calling your function? It sounds like you should set that variable as the output argument of your function.
You should not need eval or global. There are almost always better ways.
% Button pushed function: ResultButton
function ResultButtonPushed(app, event)
TestPenchCode3 %calling function
Result = evalin('base' , 'ans');
app.EditField.Value = Result;
end
@cr The result is like, 'this case is healthy' or 'patient'
You should edit your function so you can actually retrieve the output and call it like this:
% Button pushed function: ResultButton
function ResultButtonPushed(app, event)
Result = TestPenchCode3; %calling function
app.EditField.Value = Result;
end
You never need to use eval.
@Rik Thank you so much, it's done.
I have another Q, I'm working on matlab code for detecting speech disorder, I've five classes each class is 220 sounds, so I use calssification learner in matlab with some features(statistic features, spectrm and MFCCs), The problem is that the accuracy of classifier is weak (about 75%), do you know how I increase it.
I'm afraid I can't help you with that. The answer will depend on your exact method and data. You could try opening a new question.
I'll open a new question
Thank you my friend

请先登录,再进行评论。

回答(0 个)

类别

帮助中心File Exchange 中查找有关 Code Execution 的更多信息

产品

版本

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by