Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Definir un menú contextual

En el siguiente ejemplo se muestra cómo definir un menú contextual.

Cuándo utilizar un menú contextual

Los menús contextuales aparecen cuando los usuarios hacen clic con el botón derecho en el objeto de gráficos al que ha asignado el menú contextual. Los menús contextuales le permiten proporcionar opciones a los usuarios para interactuar con los objetos de gráficos.

Programe un menú contextual cuando desee que un usuario pueda:

  • Elegir entre opciones específicas haciendo clic con el botón derecho en un objeto de gráficos.

  • Facilitar una idea de lo que es cada opción a través de la etiqueta de menú.

  • Obtener un resultado específico sin conocer las combinaciones de teclas.

Cómo definir un menú contextual

  • Cree un objeto uicontextmenu y guarde su identificador.

  • Cree cada elemento de menú mediante uimenu.

  • Defina los callbacks de cada elemento de menú en el menú contextual.

  • Asocie los elementos de menú individuales al menú contextual y asigne el callback correspondiente.

  • Asigne el identificador de menú contextual a la propiedad UIContextMenu del objeto para el que está definiendo el menú contextual.

function cmHandle = defineCM
   cmHandle = uicontextmenu;
   uimenu(cmHandle,'Label','Wider','Callback',@increaseLW);
   uimenu(cmHandle,'Label','Inspect','Callback',@inspectLine);
end
function increaseLW(~,~)
% Increase line width
   h = gco;
   orgLW = h.LineWidth;
   h.LineWidth = orgLW+1;
end
function inspectLine(~,~)
% Open the property inspector
   h = gco;
   inspect(h)
end

La función defineCM devuelve el identificador al menú contextual que crea. Asigne este identificador a la propiedad UIContextMenu de los objetos de línea a medida que los crea la función plot:

plot(rand(1,5),'UIContextMenu',defineCM)

Utilice un patrón de programación similar para sus requisitos específicos.