【发布时间】:2019-09-17 01:24:37
【问题描述】:
我正在尝试为几个目的编写一个 GUI,看起来像这样,
其中之一是通过 uitable 根据用户输入创建矩阵,因此在 untitled_OpeningFcn 中预定义了大小并启用了单元格编辑
set(handles.uitable1,'Data',cell(2,3));
set(handles.uitable1,'ColumnEditable',true(1,3))
在pushbutton2_Callback内部,我尝试读取写入表格的数据,将其存储并显示在静态文本字段中:
value=get(handles.uitable1,'Data');
value=str2double(value);
set(handles.text2,'String',num2str(value));
但是当它运行时,文本字段显示"NaN",所以数据没有被保存。
还需要什么?
更新
感谢 aswer 它没有给出预期的结果
使用原始代码时,它会给出下一个输出
当使用建议的 mat2str 时,我得到了这个
【问题讨论】:
-
你试过debugging this吗?我的直觉是
value=get(handles.uitable1,'Data');不会产生任何可转换为数字的东西(例如,试试这个:str2double({1,2,3;4,5,6})),因此随后的str2double失败。如果handles.uitable1.Data已经包含数字,则在其上应用str2double只会使其变为NaN(例如str2double(magic(3)))。
标签: matlab user-interface user-input matlab-guide matlab-uitable