matlab文本框赋值给变量,怎样将edit控件中输入的数字赋值给一个变量

下面是我仿写的每次输入数值后都提醒Num1--Num5没有定义

hFigure2 = figure('Name', '光学拍实验',...

'Menubar', 'none',...

'Position', [250 80 800 600],...

'NumberTitle', 'off');

hAxes2 = axes('Units','Pixels',...

'ydir','reverse',...

'Position',[50 350 250 200]);

hAxes3 = axes('Units','Pixels',...

'ydir','reverse',...

'Position',[50 20 700 250]);

hAxes4 = axes('Units','Pixels',...

'ydir','reverse',...

'Position',[350 350 250 200]);

set(get(hAxes2, 'title'), 'string', '输入波形图');

set(get(hAxes3, 'title'), 'string', '光学拍实验现象');

set(get(hAxes4, 'title'), 'string', '光强分布图');

uicontrol('Style', 'text',...

'Position', [620 520 100 30],...

'Fontsize', 12,...

'string', '振幅E:');

Num1 = uicontrol('Parent',hFigure2,...

'Style', 'edit',...

'Units', 'pixels',...

'Position', [720 520 50 30],...

'Horiz', 'left',...

'Tag', 'DirectionPop',...

'Callback', 'NumStr = get(Num1, ''String''); a = str2num(NumStr);');

uicontrol('Style', 'text',...

'Position', [620 490 100 30],...

'Fontsize', 12,...

'string', '波1角频率w1:');

Num2 = uicontrol('Style', 'edit',...

'Units', 'pixels',...

'Position', [720 490 50 30],...

'Horiz', 'left',...

'Tag', 'DirectionPop',...

'Callback', ['NumStr = get(Num2, ''String'');',...

'w1 = str2num(NumStr)']);

uicontrol('Style', 'text',...

'Position', [620 460 100 30],...

'Fontsize', 12,...

'string', '波2角频率w2:');

Num3 = uicontrol('Style', 'edit',...

'Units', 'pixels',...

'Position', [720 460 50 30],...

'Horiz', 'left',...

'Tag', 'DirectionPop',...

'Callback', ['NumStr = get(Num3, ''String'');',...

'w2 = str2num(NumStr)']);

uicontrol('Style', 'text',...

'Position', [620 430 100 30],...

'Fontsize', 12,...

'string', '波1波数k1:');

Num4 = uicontrol('Style', 'edit',...

'Units', 'pixels',...

'Position', [720 430 50 30],...

'Horiz', 'left',...

'Tag', 'DirectionPop',...

'Callback', ['NumStr = get(Num4, ''String'');',...

'k1 = str2num(NumStr)']);

uicontrol('Style', 'text',...

'Position', [620 400 100 30],...

'Fontsize', 12,...

'string', '波2波数k2:');

Num5 = uicontrol('Style', 'edit',...

'Units', 'pixels',...

'Position', [720 400 50 30],...

'Horiz', 'left',...

'Tag', 'DirectionPop',...

'Callback', ['NumStr = get(Num5, ''String'');',...

'k2 = str2num(NumStr)']);

btnStart_Callback = ['t = 0.1 : 0.2 : 1.3;',...

'x = 0 : 0.001 : 5;',...

'E1 = a * cos(k1*x - w1*t(end));',...

'E2 = a * cos(k2*x - w2*t(end));',...

'plot(hAxes2,x,E1,''b'',x,E2,''r'');',...

'x = 0:0.001:20;',...

'k = 0;',...

'm2 = moviein(length(0.1:0.2:1.3));',...

'for t=0.1:0.2:1.3,',...

'k = k+1;',...

'A = 2*a*cos((k1-k2)/2*x-(w1-w2)/2*t);',...

'v = a*cos(k1*x -w1*t)+a*cos(k2*x-w2*t);',...

'plot(hAxes3,x,v,''k'',x,A,''g'',x,-A,''g'');',...

'm2(:,k) = getframe;',...

'end,',...

'x = 0:0.001:20;',...

'A = 2*a*cos((k1-k2)/2*x-(w1-w2)/2*t(end));',...

'I = A.*A;',...

'plot(hAxes4,x,I)'];

uicontrol('Position', [620 330 150 50],...

'Fontsize', 12,...

'string', '开始',...

'Callback', btnStart_Callback);

如果单独运行下面程序  是可以给a赋值的

Num1 = uicontrol('Parent',hFigure2,...

'Style', 'edit',...

'Units', 'pixels',...

'Position', [720 520 50 30],...

'Horiz', 'left',...

'Tag', 'DirectionPop',...

'Callback', 'NumStr = get(Num1, ''String''); a = str2num(NumStr);');

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值