Multiple check boxes to check to provide an output
24 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Muhammad Abir
il 17 Ago 2020
Commentato: Matlab Pro
il 3 Apr 2024
I have 6 checkboxes with 6 different conditions to run a query. User will select any number of check boxes (may be only 1 or may be all 6 or may be only 3 checkboxes). For example, let's say if user selects checkbox 1 and checkbox 2, then by selecting a 'search' pushbutton, the result will show one output or if user selects all checkboxes then the search will shows a different output.
1 Commento
Risposta accettata
Prabhanjan Mentla
il 20 Ago 2020
Modificato: Prabhanjan Mentla
il 20 Ago 2020
Hi,
I assume that on selecting the combinations checkboxes the text should vary, on clicking a button.
For accessing the checkbox values, you may code something like below
function ButtonPushed(app, event)
fieldNames = fieldnames(app); % get the uicomponents
allCheckBoxNamesList = fieldNames(contains(fieldNames,'CheckBox','IgnoreCase',true)); % get the checkboxes
for i = 1:numel(allCheckBoxNamesList) % loop through all checkboxes
if app.(allCheckBoxNamesList{i}).Value == true % display all the checkboxes which are true
app.TextArea.Value = [string(app.TextArea.Value);app.(allCheckBoxNamesList{i}).Text;] % append to Text Area
end
end
You may get something like below
Hope this helps.
2 Commenti
Matlab Pro
il 3 Apr 2024
To get a more "generic" answer - you can use "findall" method to catch all checkboxes @ once
% --- Executes on button press in pb_search.
function pb_search_Callback(hObject, eventdata, handles)
hCheckboxes = findall(handles.output,'Style','checkbox'); % Get all checkboxes inside a container
hCheckboxes_selected = findall(hCheckboxes,'Value',1); % Get all Selected checkboxes from the above collection
strings = get(hCheckboxes_selected,'String'); % Get all the text from the Selected checkboxes
if ~isempty(strings) && iscell(strings)
strings = strjoin(strings,' ,');
end
handles.ed_search.String = strings;
Matlab Pro
il 3 Apr 2024
of course, you can enter as the 1st input to "findall" a more specific container (a panel) that holds the relevant checkboxes...
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Characters and Strings in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!