Matlab gui-通过选中多个复选框填充数组

时间:2014-05-27 20:05:54

标签: arrays matlab user-interface checkbox

我有一个gui,它有6个复选框。如果用户没有选择任何复选框,则会显示一条消息。但是,如果选中一个复选框,则数组将采用特定的数字。如果选中了复选框1,则数组框=零(6,1)必须变为方框(1,1)= 1导致数组 box = [1 0 0 0 0 0]。

问题是当我选择多个复选框时。数组框仅采用所选的最后一个复选框编号。我用于每个复选框的代码是:

checkbox1_Callback(hObject, ~, handles)
isChecked = get(hObject,'Value');

if isChecked==1
        box(i,1)=i;%% i=1:6
        handles.box=box;
end
guidata(hObject, handles)  %% that code is for every checkbox

在按下按钮时,数组框将传递到工作区。

function Button_Callback(hObject, ~, handles)

if nnz(handles.box)==0
    handles.message=msgbox('Please select ...');
else
    assignin('base', 'box', handles.box);
guidata(hObject, handles)

那么我如何拥有一个数组来获取值,所有选中的复选框,而不是最后选择的那个?

感谢您的回复。

0 个答案:

没有答案