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 Kommentare

Rik
Rik am 10 Mai 2022
Why are you using a script for anything serious? You should be using functions instead, as those provide a stable interface.
Ayman Shaban
Ayman Shaban am 10 Mai 2022
Actualiy I'm using functions and call them in these scripts, I don't know if I can call func in func !
Rik
Rik am 10 Mai 2022
You can absolutely call a function from within a function. So you don't need to use a script at any point.
Ayman Shaban
Ayman Shaban am 11 Mai 2022
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
cr
cr am 12 Mai 2022
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.
Rik
Rik am 12 Mai 2022
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
Ayman Shaban
Ayman Shaban am 12 Mai 2022
@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.
Ayman Shaban
Ayman Shaban am 12 Mai 2022
@Rik Thank you so much, it's done.
Ayman Shaban
Ayman Shaban am 12 Mai 2022
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.
Rik
Rik am 13 Mai 2022
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.
Ayman Shaban
Ayman Shaban am 13 Mai 2022
I'll open a new question
Thank you my friend

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Code Execution finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2021a

Gefragt:

am 9 Mai 2022

Kommentiert:

am 13 Mai 2022

Community Treasure Hunt

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

Start Hunting!

Translated by