Azzera filtri
Azzera filtri

write a struct to a ui table

23 visualizzazioni (ultimi 30 giorni)
CoderMinga il 9 Set 2022
Commentato: Ankit il 9 Set 2022
how to write a struct to a ui table in appdesigner

Risposta accettata

Ankit il 9 Set 2022
Modificato: Ankit il 9 Set 2022
You can follow following steps:
S.Name = ["Chang";"Brown";"Ruiz"];
S.Smoker = ["Y";"N";"Y"];
S.SystolicBP = [124;122;130];
S.DiastolicBP = [93;80;92];
fields = fieldnames(S)';
T = struct2table(S); % converting struct to table
app.UITable.Data = T;
app.UITable.ColumnName = fields;
  2 Commenti
CoderMinga il 9 Set 2022
What if an element in a structure is also a structure, how does it show up in the table?
Ankit il 9 Set 2022
What is your use case? In case if structure is also a structure you can use struct2table. In this case you need to first convert it cell (struct2cell) and then to table using cell2table.
But my question is do you want to show the table completely - this is difficult. You can extract the data and display it on table.

Accedi per commentare.

Più risposte (1)

chrisw23 il 9 Set 2022
structDef = struct("field1",0,"field2",0); % definition
defaultTbl = repmat(struct2table(structDef),10,1); % default empty 10row table
app.UITable.Data = defaultTbl; % copy table to uitable Data property
app.UITable.ColumnName = tbl.Properties.VariableNames; % copy variable names(table) to column names(uitable)
data1 = structDef; % empty struct copy
data1.field1 = 333; % example field data
data1.field2 = 666;
targetRow = 3;
app.UITable.Data(targetRow,:) = struct2table(data1); % write struct data to table row
Another example to show the diffs between table and uitable, because there's only a struct2table() function.


Scopri di più su Develop Apps Using App Designer in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by