xiaohedongliu 发表于 2009-2-19 11:46

MATLAB GUI 界面 EDIT TEXT数组输入的问题

我现在准备用三个可编辑文本框,实现一维数组的各个元素的对应相加,其中前两个作为加数,后一个文本框作为输出,用一个push button控制,我的代码如下:
在第一个文本框的调用函数中输入;
number1=get(hObject,'string');%实现文本字符串读入
a=str2double(number1);            %字符转double型
在第二个文本框的调用函数中输入;
number2=get(hObject,'string');%实现文本字符串读入
b=str2double(number2);            %字符转double型
在push button的调用函数中输入代码:
c=a+b;             %相加
number3=mat2str(c);   %数组转矩阵
get('hObject,'string',number3);%输入到可编辑edit3文本框
实现原理很简单,现在编译时候也通过了,没有错误出现,现在主要遇见的问题是输入一个数字可以,如第一革文本框输入1,第二个文本框输入2,则运行后输出为3,要是输入数组就不能进行相加如输入,,则输出为NAN,或者输出为,
弄了几天都不行,很郁闷,我怀疑是不是版本的问题,我用的是7.0的,还希望同仁参与讨论,敬请赐教!

[ 本帖最后由 ChaChing 于 2009-2-19 13:19 编辑 ]

ch_j1985 发表于 2009-2-20 23:59

回复 楼主 xiaohedongliu 的帖子

str2double不能转换这样的矩阵()吧,格式不对?

wangyi_elite 发表于 2009-2-27 19:47

应该是矩阵格式的问题,具体怎么的还得多试验调试

ChaChing 发表于 2009-2-27 21:26

试试str2num

xiaohedongliu 发表于 2009-3-30 13:53

问题已经搞定原来用的是str2double(),表示字符转double型,不对应该为str2num().弄了大约一个星期!
页: [1]
查看完整版本: MATLAB GUI 界面 EDIT TEXT数组输入的问题