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

2025-01-04 14:34:21
推荐回答(1个)
回答1:

建立GUI界面,设三个可编辑文本框Tag为A_edit,B_edit,O_edit,生成的M文件修改后部分如下:

function baidu1_OpeningFcn(hObject, eventdata, handles, varargin)

% This function has no output args, see OutputFcn.

% hObject    handle to figure

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)

% varargin   command line arguments to baidu1 (see VARARGIN)

set(handles.A_edit,'String','');

set(handles.B_edit,'String','');

% Choose default command line output for baidu1

handles.output = hObject;

% Update handles structure

guidata(hObject, handles);

% UIWAIT makes baidu1 wait for user response (see UIRESUME)

% uiwait(handles.figure1);


function output_push_Callback(hObject, eventdata, handles)

% hObject    handle to output_push (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)

A=str2num(get(handles.A_edit,'String'));

B=str2num(get(handles.B_edit,'String'));

S=sum(A.*B)/sum(B);

set(handles.O_edit,'String',num2str(S));