0

我想用一个Bushbutton(Bushbutton)制作一个主GUI。当按下 pb1 => 打开一个带有按钮(Upb1)、一个编辑(Uet1)和一个文本(Ust1)的图形(图)。我想要:当按下 Upb1 时,Ust1 显示 Uet1 的数量(同样,当改变 Uet1 并按下 Upb1 时,Ust1 改变)。

我写了这段代码但没有工作(var1未定义)。我该怎么办?

function Bushbutton_Callback(hObject, eventdata, handles)       % main
      Fig=figure('MenuBar','none');
      Ust1= uicontrol(Fig,...
               'Position',[50 60 80 20 ],...
               'Style','text')
      Uet1= uicontrol(Fig,...
              'Position',[50 90 80 20 ],...
              'Style','edit',...
              'string',10,...
              'callback',@printNum)
     Upb1= uicontrol(Fig,...
              'Position',[50 30 80 20 ],...
              'Style','pushbutton',...
              'callback',@printNum)


function printNum(hObject, eventdata,handles)         

    var1=get(Uet1,'string')
    set(Ust,'string',var1)
4

1 回答 1

1

您需要更改第二个函数的范围,以便它可以访问变量 Uet1 和 Ust1。这意味着,您需要在 Bushbutton_Callback 的范围内实现它(可能希望将其称为 Pushbutton_Callback ...)

function Bushbutton_Callback(hObject, eventdata, handles)
      Fig=figure('MenuBar','none');
      Ust1= uicontrol(Fig,...
           'Position',[50 60 80 20 ],...
           'Style','text')
      Uet1= uicontrol(Fig,...
          'Position',[50 90 80 20 ],...
          'Style','edit',...
          'string',10,...
          'callback',@printNum)
     Upb1= uicontrol(Fig,...
          'Position',[50 30 80 20 ],...
          'Style','pushbutton',...
          'callback',@printNum)

    function printNum(hObject, eventdata,handles)         
        var1=get(Uet1,'string')
        set(Ust1,'string',var1)
    end

end
于 2012-09-27T18:59:51.040 回答