Main Content

La traducción de esta página está obsoleta. Haga clic aquí para ver la última versión en inglés.

Pasar el clic del ratón al objeto oculto

Este ejemplo muestra cómo pasar los clics del ratón a un objeto oculto.

Establezca la propiedad PickableParts para un objeto de gráficas en none para evitar que el objeto capte un clic de ratón. Este ejemplo:

  • Define un menú contextual para los ejes que denomina hold con los valores on o off

  • Crea una gráfica en la que ningún objeto de datos puede captar el clic de ratón dejando así que todos los clics secundarios pasen a los ejes y recurran al menú contextual.

La función axesHoldCM define un menú contextual y devuelve sus identificadores.

function cmHandle = axesHoldCM
   cmHandle = uicontextmenu;
   uimenu(cmHandle,'Label','hold on','Callback',@holdOn);
   uimenu(cmHandle,'Label','hold off','Callback',@holdOff);
end
function holdOn(~,~)
   fig = gcbf;
   ax = fig.CurrentAxes;
   hold(ax,'on')
end
function holdOff(~,~)
   fig = gcbf;
   ax = fig.CurrentAxes;
   hold(ax,'off')
end

Cree una gráfica de barras y establezca la propiedad PickableParts de los objetos de la barra:

bar(1:20,'PickableParts','none')

Cree el menú contextual para los ejes actuales:

ax = gca;
ax.ContextMenu = axesHoldCM

Haga clic con el botón secundario sobre las barras en la gráfica y muestre el menú contextual de los ejes: