How do I replace the sting value in one popup based on the value selected in another popup?

2 visualizaciones (últimos 30 días)
popupMenu = uicontrol(topPanel,'Style','popupmenu',...
'String',solString,...
'Units','normalized',...
'Value',1,'Position',[.1 .25 .2 .5],...
'Callback',@popupmenuCallBack);
hourpopupMenu = uicontrol(topPanel,'Style','popupmenu',...
'String',hourString,...
'Units','normalized',...
'Value',1,'Position',[.5 .25 .2 .5],...
'Callback',@hourpopupmenuCallBack);
function hourpopupmenuCallBack(hObject, eventdata, handles)
global sol_index_selected
global hour_index_selected
global solution_index
global allData
hour_index_selected = get(hObject,'Value');
% to generate new string
newSolString = [];
for n=1:size(allData.all_data(hour_index_selected).solutions,1)
newSolString = [newSolString string("Solution "+n)];
end
% NEED TO REPLACE STRING OF "popupmenu" WITH "newSolString"
end
% callback function for dropdown/popup menu in the top panel
function popupmenuCallBack(hObject, eventdata, handles)
global sol_index_selected
sol_index_selected = get(hObject,'Value');
end

Respuesta aceptada

Walter Roberson
Walter Roberson el 12 de Jun. de 2017
Change
popupMenu = uicontrol(topPanel,'Style','popupmenu',...
'String',solString,...
'Units','normalized',...
'Value',1,'Position',[.1 .25 .2 .5],...
'Callback',@popupmenuCallBack);
to
popupMenu = uicontrol(topPanel,'Style','popupmenu',...
'String',solString,...
'Units','normalized',...
'Value',1,'Position',[.1 .25 .2 .5],...
'Callback',@popupmenuCallBack, ...
'tag', 'Pup');
Replace
newSolString = [];
for n=1:size(allData.all_data(hour_index_selected).solutions,1)
newSolString = [newSolString string("Solution "+n)];
end
with
newSolString = 'Solution " + (1:size(allData.all_data(hour_index_selected).solutions,1));
popupmenu = findobj(ancestor(hObject, 'figure'), 'tag', 'Pup');
popupmenu.String = newSolString;

Más respuestas (0)

Categorías

Más información sobre Migrate GUIDE Apps en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by