How do I add a Table in App Designer?

63 views (last 30 days)
Sree
Sree on 16 Nov 2018
Commented: Adam Danz on 9 May 2023
With due respect, the instructions for App Designer are at best counter-intuitive and hermetic. For example, how to create a Table with 3 columns and 3 rows (besides the row of column headings), name columns AND rows, and populate the cells with Default values. Make these cell data entries editable by the user when running the app. The app sould take these Table data (and other data from the Slider, Knob, etc.), run a code that generates a plot.
I am stuck in trying to add Row Names. The User Community advises I need to add Table data first. But there seems to be no place in Design View to add such data!
  11 Comments
Adam Danz
Adam Danz on 20 Nov 2018
If you share that snippet of code I might be able to help. Also, I'll move the response to the 'answers' section so others may find it useful in the future.
ibenitoseb
ibenitoseb on 10 Mar 2020
Here is a tutorial on adding rows and columns to tables in app designer:

Sign in to comment.

Accepted Answer

Adam Danz
Adam Danz on 20 Nov 2018
Edited: Adam Danz on 20 Nov 2018
To add data to a UItable in App Designer, use the startupFcn() after creating the table in the UI.
  1. From the App Designer in design mode, right click anywhere on your app background, hover your mouse over 'callbacks', and add a startupFcn callback.
  2. Go to Code View and you'll see the startupFcn. Add your data to your table there. Refer to the documentation below to change other properties of the table.
app.UITable.Data = {1 2 3 4};
  5 Comments
Luca Re
Luca Re on 8 May 2023
I read your link but couldn't find it
Adam Danz
Adam Danz on 9 May 2023
In the link, see the image in the first step. You must select your app in the component browser.

Sign in to comment.

More Answers (2)

Paul Macey
Paul Macey on 17 Jun 2020
Edited: Paul Macey on 17 Jun 2020
Should really have a way to initalize in properties with at least one empty row.....
Here's what I did in the app startupFcn
app.ColorsUITable.Data = cell(1,length(app.ColorsUITable.ColumnName));
  1 Comment
Adam Danz
Adam Danz on 18 Jun 2020
That is the way to initialize a table with 1 empty row.
For some data types you can use <missing>

Sign in to comment.


Eric Sargent
Eric Sargent on 9 Dec 2020
You can edit the RowName, ColumnName and ColumnEditable Properties of a UITable from the Property Inspector of App Designer.
You cannot add Data to a UITable from the Design View of App Designer, you will need to add the data in a StartupFcn (or other callback). For example
function startupFcn(app)
app.UITable.Data = rand(2,4);
end
Will result in:
  2 Comments
Kristina Francke
Kristina Francke on 1 Feb 2023
Edited: Kristina Francke on 1 Feb 2023
what if i want to add a value in Column 1 row Two only?
Adam Danz
Adam Danz on 1 Feb 2023
Edited: Adam Danz on 1 Feb 2023
app.UITable.Data(2,1) = value;

Sign in to comment.

Categories

Find more on Develop Apps Using App Designer in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!