MATLAB : access to the callback function of checkbox
3 次查看(过去 30 天)
显示 更早的评论
Hello, I have some checkbox and a push button to select all of them.
Code of my button "Select all" :
for i = 1:5
set(sprintf('handles.check%d',i),'value', 1)
end
But, I would like to go to the checkbox callback function each time I select one of them. How can I do this ? Because for the moment, all my check box are selected when I push the button "Select all" but the code into each checkbxo is not executed. My code in a checkbox is :
function check1_Callback(hObject, eventdata, handles)
if(get(hObject ,'Value') == 1)
ind=1;
assignin('base','ind',ind);
end
end
0 个评论
采纳的回答
Adam
2015-3-19
编辑:Adam
2015-3-19
Factor out your checkbox callbacks to something like this:
function checkBoxCallback( hCheckbox, ind )
if ( logical( get( hCheckbox, 'Value' ) )
assignin('base','ind',ind);
end
then an individual callback would just be e.g.
function check1_Callback(hObject, eventdata, handles)
checkBoxCallback( hObject, 1 );
and in the for loop you put at the top of your question just add in a call to this new factored out function as e.g.
for i = 1:5
set(sprintf('handles.check%d',i),'value', 1)
checkBoxCallback( handles.( sprintf( 'check%d', i ) ), i );
end
I may have made a few syntax errors there as I am typing straight into here without testing in Matlab first, but hopefully you get the idea even if the syntax is not exact.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Interactive Control and Callbacks 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!