Problem with saving the Data of programmaticaly created uitable
显示 更早的评论
I create a variable size uitable programmaticly (not using GUIDE) which works well. What I am struggling with is saving the content of the created table, it keeps telling "Reference to non-existent field 'load_table'". Even if I try to save it in another callback it keeps telling the same error. Any ideas? much appreciated.
3 个评论
Jan
2016-1-15
Without seeing the code it is impossible to guess, where the error is. So please edit your question and insert the relevant part of the code and a copy of the complete error message.
Mus'ab Ahmad
2016-1-15
编辑:Stephen23
2016-1-15
Mus'ab Ahmad
2016-1-15
回答(1 个)
Walter Roberson
2016-1-15
0 个投票
You use handles.load_table but you never created that. You created load_table without storing it in handles
3 个评论
Mus'ab Ahmad
2016-1-15
编辑:Walter Roberson
2016-1-15
Walter Roberson
2016-1-15
guihandles(load_table) looks through the figure that contains the load_table graphics object and finds all graphics objects with non-empty Tag where the Tag is a legal variable name, and creates a structure with one field for each of those tags.
When you then guidata() that structure, it effectively becomes (or replaces) the handles structure for all later calls.
If, in a later routine, you then try to access handles.table_handles that field would only exist if there had been a graphics object with Tag 'table_handles'
The uitable() that you are creating have no Tag, so even if they were created before the guihandles() call then they would not be recorded in the structure.
What you probably want is that once your handles structure has been created, and you have assigned table_handles the appropriate uitable() value,
handles.table_handles = table_handles;
guidata(hObject, handles);
Mus'ab Ahmad
2016-1-19
编辑:Walter Roberson
2016-1-19
类别
在 帮助中心 和 File Exchange 中查找有关 App Building 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!