calling a function inside an app?

16 ビュー (過去 30 日間)
Abdelrahman Taha
Abdelrahman Taha 2020 年 1 月 8 日
コメント済み: Abdelrahman Taha 2020 年 1 月 8 日
Hi,
I am trying to understand how to call a function inside an app. So, I've created a simple app to get the sum of two numbers (a,b), and c is their sum. There's a pushbutton in the app whose function is to run this created functon outside the app and assign the outcome to the variable "c". However when I run the app, I get this error:
Unable to resolve the name app.a.
Error in su (line 2)
c = app.a + app.b;
This is the app code
properties (Access = public)
a % Description
b % Description
end
% Callbacks that handle component events
methods (Access = private)
% Value changed function: aEditField
function aEditFieldValueChanged(app, event)
app.a = app.aEditField.Value;
end
% Value changed function: bEditField
function bEditFieldValueChanged(app, event)
app.b = app.bEditField.Value;
end
% Button pushed function: Button
function ButtonPushed(app, event)
su;
app.cEditField.Value = c;
And this is the "su" function
function su
c = app.a + app.b;
end
Any help on why I get this error would be really appreciated.
Thanks

採用された回答

J. Alex Lee
J. Alex Lee 2020 年 1 月 8 日
Functions need inputs and outputs, so you will need to define the function su as
function out = su(app)
out = app.a+app.b
end
and inside your app
function ButtonPushed(app, event)
c = su(app);
app.cEditField.Value = c;
end
Now, as to whether this structure for the app and function is a good structure, that's a separate question.
  1 件のコメント
Abdelrahman Taha
Abdelrahman Taha 2020 年 1 月 8 日
Thanks for your help, it's working.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDevelop Apps Using App Designer についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by