Why does my matrix looks empty when it's not?

4 ビュー (過去 30 日間)
Giulia Di Giorgio
Giulia Di Giorgio 2023 年 3 月 11 日
コメント済み: Giulia Di Giorgio 2023 年 3 月 12 日
Hello, I'm trying to code an UItable where the user is free to add and delete as many rows as they want to. I need the data entered by the user to do some calculus but when I use the get function and then transfer that to a matrix, it runs ok but shows an empty matrix M.
Ps. My add and delete row work just fine, the problem is somewhere else
tabla={'','',''};
app.UITable.Data=tabla;
%I called "tabla" as a global because the code above is in a
%startupFCN button
global tabla
datos = get(tabla, 'Data');
M= cell2mat(datos);

採用された回答

Walter Roberson
Walter Roberson 2023 年 3 月 11 日
When you global a variable after assigning a local value to the variable in the same workspace, then the local value is removed and the current global value replaces it.
tabla={'','',''};
app.UITable.Data=tabla;
global tabla
is like clear tabla right before the global tabla -- unless, that is, tabla was already global in the workspace.
Furthermore, you get(tabla, 'Data') but is tabla a UITable ? Or is it a cell array of character vectors like you assigned in your code?
Your code appears to be confusing the contents of the UITable and the handle of the UITable.
  5 件のコメント
Walter Roberson
Walter Roberson 2023 年 3 月 12 日
function calculateButtonPushed(app, event)
datos = app.UITable.Data;
M = cell2mat(datos);
end
Giulia Di Giorgio
Giulia Di Giorgio 2023 年 3 月 12 日
Thank you very much

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeArgument Definitions についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by