Определение контекстного меню

В этом примере показано, как задать контекстное меню.

Когда использовать контекстное меню

Контекстные меню отображены, когда пользователи щелкают правой кнопкой по графическому объекту, для которого вы присваиваете контекстное меню. Контекстные меню позволяют вам предоставить выбор пользователям для взаимодействия с графическими объектами.

Программируйте контекстное меню, когда это необходимо, пользователь, чтобы смочь к:

  • Выберите среди определенных опций путем щелчка правой кнопкой по графическому объекту.

  • Обеспечьте индикацию относительно того, что каждая опция через метку меню.

  • Приведите к определенному результату, не зная сочетаний клавиш.

Как задать контекстное меню

  • Создайте ContextMenu объект путем вызова uicontextmenu функция с выходным аргументом.

  • Создайте каждый пункт меню с помощью uimenu.

  • Задайте коллбэки для каждого пункта меню в контекстном меню.

  • Породите отдельные пункты меню к контекстному меню и присвойте соответствующий коллбэк.

  • Присвойте ContextMenu возразите против ContextMenu свойство объекта, для которого вы задаете контекстное меню.

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

defineCM функция возвращает указатель на контекстное меню, которое это создает. Присвойте этот указатель на ContextMenu свойство объектов линии, когда они создаются plot функция:

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

Используйте подобный шаблон программирования в своих конкретных требованиях.