creating callback for each string of a popupmenu in GUI
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
sermet
el 5 de Jul. de 2014
Respondida: Image Analyst
el 5 de Jul. de 2014
%I have a popupmenu in GUI and I created 3 strings (x,y,z) in this popupmenu. I need to create callback for each 3 strings. Each string has different codes so when user click one of them, related popupmenu's codes need to work.
0 comentarios
Respuesta aceptada
Image Analyst
el 5 de Jul. de 2014
Try this:
function popupmenu1_Callback(hObject, eventdata, handles)
try
% Get value of popup
selectedIndex = get(handles.popupmenu1, 'value');
% Take action based upon selection
if selectedIndex == 1
results = Function1();
elseif selectedIndex == 2;
results = Function2();
elseif selectedIndex == 3;
results = Function3();
end
catch ME
errorMessage = sprintf('Error in function %s() at line %d.\n\nError Message:\n%s', ...
ME.stack(1).name, ME.stack(1).line, ME.message);
fprintf(1, '%s\n', errorMessage);
uiwait(warndlg(errorMessage));
end
0 comentarios
Más respuestas (1)
Robert Cumming
el 5 de Jul. de 2014
Create a single callback for the popupmenu then switch inside that callback based on which string is selected, i.e.
function popupCallback ( obj, event )
str = get ( obj, 'string' );
val = get ( obj, 'value' );
switch str{val}
case 'str1'
callbackItem1 ();
case 'str2'
callbackItem2 ();
case 'str3'
callbackItem3 ();
end
end
Ver también
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!