Change the numer rows of a uitable in MATLAB gui automatically using GUIDE?

1 view (last 30 days)
How to create an option (text box) to enter a number to automatically change the number rows of a uitable in MATLAB gui using GUIDE?

Answers (2)

Walter Roberson
Walter Roberson on 19 Nov 2017
Edited: Walter Roberson on 20 Nov 2017
uit = uitable('Data', [0 0 0]);
FirstN = @(Matrix, N) Matrix(1:N, :);
ChopN = @(Matrix, N) FirstN([Matrix; zeros(N, size(Matrix,2))], N);
uicontrol('style', 'edit', 'Callback', @(src, event) set(uit, 'data', ChopN(get(uit, 'data'), str2double(get(src, 'string'))));
  10 Comments
Walter Roberson
Walter Roberson on 10 Jul 2018
You programmed a cell edit callback, which is a callback that activates when the user edits data in the uitable. If you want the change to happen when the user edits the edit box, then
function edit3_Callback(hObject, eventdata, handles)
FirstN = @(Matrix, N) Matrix(1:N, :);
ChopN = @(Matrix, N) FirstN([Matrix; zeros(N, size(Matrix,2))], N);
set(handles.uitable1, 'Data', ChopN(get(handles.uitable1, 'Data'), str2double(get( hObject, 'string'))) )

Sign in to comment.


Image Analyst
Image Analyst on 20 Nov 2017
You can just assign the data to it and it will automatically adjust its size to handle/display all the rows and columns in your data matrix:
handles.uitable1.Data = yourData;
Or, you can just click on the little icon in the Columns entry in the Property Inspector, which you can bring up in GUIDE by double clicking on the table control.
  3 Comments
Image Analyst
Image Analyst on 21 Nov 2017
Basically get the string from the edit box
contentsString = handles.edit1.String;
Then parse contentsString to get what you want and expect - a row or whole matrix of whatever - and load that into yourData and then use the code I originally gave you:
handles.uitable1.Data = yourData;
Nikhil Tamhankar
Nikhil Tamhankar on 25 Nov 2017
Thank you sir. Will try to understand your suggestion and try to implement it.

Sign in to comment.

Categories

Find more on App Building 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!