MATLAB GUI - 使Checkbox全局化

时间:2014-11-20 09:24:42

标签: matlab user-interface checkbox global

我有一个MATLAB GUI,可以为用户提供勾选选项。每个蜱都有不同的数学意义。在用户勾选后,计算将在按下“计算”后完成。

我在计算按钮下的主要公式是:

effective_weight = weight + pilotsw + fo_weight  %pilots weight & first officer's weight

pilots_weight& fo_weight具有不同的复选框,它们具有以下代码:

function checkbox2_Callback(hObject, eventdata, handles)
% hObject    handle to checkbox2 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
% Hint: get(hObject,'Value') returns toggle state of checkbox2
% --- Executes on button press in checkbox3.

if (get(hObject,'Value') == get(hObject,'Max'))

pilotw = -100

else

 pilotw = 0

end

全球飞行员(对于第一官员的复选框也一样)

和pilotw是计算函数的全局变量。

目标是改变有效重量,如果飞行员在那里(或没有),则相应地进行其余的计算。

2 个答案:

答案 0 :(得分:0)

要访问全局变量pilotw,您需要在函数中声明它:

function checkbox2_Callback(hObject, eventdata, handles)

        %'Declare global variable'
        global pilotw

        %'Set global variable'
        if get(hObject,'Value') == get(hObject,'Max')
                pilotw = -100

        else
                pilotw = 0
        end;
end

答案 1 :(得分:0)

您需要在要使用此变量的每个函数中声明全局pilotw。