uitable callback: replace cell in a cell array with 'char' string value gives NAN not 'text'

9 views (last 30 days)
I have a mat file with a cell array with various numbers and text. I load this into a uitable and give the user the opportunity to change the values of certain cells then it auto saves to csv (cell2csv). This works fine for pop-up and numeric columnn formats, but if the column format is set at 'char' 'ABC' it appears as NaN in the table/cell array.
My callback is basically: datacellarray(event.Indices) = {event.NewData}
I've tried [] {} () in various positions and tried inputting different things in the uitable cell and setting the uitable column format to no avail. I am sure it is something completely obvious but I can only bang my head against the wall for so long. Any help/insight is greatly appreciated.
  5 Comments
Fangjun Jiang
Fangjun Jiang on 29 Aug 2011
In earlier release, if you type help uitabel, you will see
This function is undocumented and will change in a future release
G
G on 29 Aug 2011
Thanks so much for your patience. I found the error buried in table construction. The text column was off by one. It was my indexing.
Cheers.

Sign in to comment.

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 29 Aug 2011
try datacellarray(event.Indices(1),event.Indices(2)) = {event.NewData};
  9 Comments
G
G on 29 Aug 2011
It appears I can only use 'char' as a ColumnFormat.
"ColumnFormat definitions must be either 'numeric', 'logical', 'char', or be a popupmenu definition"
I am getting the feeling it is something deeper.
Fangjun Jiang
Fangjun Jiang on 29 Aug 2011
Run the two lines below and then try to change the value. In column 1, if you try to type in 'abc', it will become NaN. In column 2, you can type in anything.
a={1 'a' true};
h=uitable('data',a,'columnformat',{'numeric','char','logical'},'columneditable',true)

Sign in to comment.

More Answers (0)

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!