0

2つのGUIがあります。

最初のGUIの名前はGUI1で、ユーザーは3つの値を挿入します。

次に、ユーザーには[送信]ボタンがあるので、ユーザーが押すたびにこれらの値を他の関数(GUI2)に送信する必要があります。

私の関数GUI2.mは3つの要素を取得します。

function GUI2(x,y,r)
   .
   .
   .
end

これが最初のGUIです。

function [E] = GUI1()
    num_of_columns = 3;


    E = [];  % In case the user closes the GUI.
    S.fh = figure('units','pixels',...
          'position',[500 500 850 100],...
          'menubar','none',...
          'name','Number Of Columns',...              
          'numbertitle','off',...
          'resize','off');
    num = 0;
    for i = 1:num_of_columns
        S.ed(i) = uicontrol('style','edit',...
             'units','pix',...
            'position',[num 60 100 30],...
            'string','');
        num = num + 500/num_of_columns;
        uicontrol(S.ed(1))  % Make the editbox active.
     end

     S.pb = uicontrol('style','pushbutton',...
             'units','pix',...
            'position',[290 20 180 30],...
            'string','Submit',...
            'callback',{@pb_call});

     uiwait(S.fh)  % Prevent all other processes from starting until closed.

     function [] = pb_call(varargin)
         % Callback for the pushbutton.
         E = get(S.ed(:),'string');
         E{1} = str2num(E{1});
         E{2} = str2num(E{2});
         E{3} = str2num(E{3});

この行では、E {1}、E {2}、およびE{3}をGUI2に送信します。

     end
end
4

1 に答える 1

1

どうですか:

GUI2(E{1},E{2},E{3}) 
于 2012-11-07T08:10:36.393 に答える