Можно использовать GUIDE, чтобы создать панели меню (содержащий выпадающие меню), а также контекстные меню, которые вы присоединяете к компонентам. Можно создать оба типа меню с помощью Редактора меню. Доступ к Редактору меню из меню Tools или нажимает кнопку Menu Editor.
Когда вы создаете выпадающее меню, GUIDE добавляет свой заголовок на панель меню. Затем можно создать пункты меню для того меню. Каждый пункт меню может иметь подменю, также известное как подменю, и эти элементы могут иметь подменю и так далее.
По умолчанию, когда вы создаете пользовательский интерфейс с GUIDE, это не создает панель меню для того пользовательского интерфейса. Вам не могут быть нужны меню для вашего пользовательского интерфейса, но если вы хотите, чтобы пользователь смог прикрепить или расстыковать окно UI, он должен содержать панель меню или панель инструментов. Это вызвано тем, что прикреплением управляют прикрепляющийся значок, маленькая кривая стрелка около верхнего правого угла панели меню или панели инструментов, когда следующий рисунок показывает.
Окна рисунка с панелью стандартного меню также имеют меню Desktop, из которого пользователь может прикрепить и расстыковать их.
Чтобы отобразить прикрепляющуюся стрелку и пункт меню Desktop> Dock Figure, используйте Property Inspector, чтобы установить свойство DockControls
фигуры на 'on'
. Необходимо также установить MenuBar
и/или свойства ToolBar
фигуры к 'figure'
отображать прикрепляющиеся средства управления.
Свойство WindowStyle
фигуры также влияет на прикрепляющееся поведение. Значением по умолчанию является 'normal'
, но если вы изменяете его на 'docked'
, затем следующее применяется:
Окно UI открывается прикрепленный в рабочем столе, когда вы запускаете его.
Свойство DockControls
установлено в 'on'
и не может быть выключено, пока WindowStyle
больше не устанавливается в 'docked'
.
Если вы расстыкуете окно UI, созданное с WindowStyle
'docked'
, он будет иметь не, имеют прикрепляющуюся стрелку, если фигура не отображает панель меню или панель инструментов (или стандарт или настроенный). Когда это не имеет никакой стрелки прикрепления, пользователи могут расстыковать его с рабочего стола, но будут не мочь повторно прикрепить его там.
Однако, когда вы обеспечиваете свою собственную панель меню или панель инструментов с помощью GUIDE, это может отобразить прикрепляющуюся стрелку, если вы хотите, чтобы окно UI было прикрепляемо. Смотрите следующие разделы и Создайте Панели инструментов для GUIDE UI для деталей.
UIs, которые являются модальными диалоговыми окнами (фигуры с набором WindowStyle
к 'modal'
) не могут иметь панелей меню, панелей инструментов или прикрепляющихся средств управления.
Для получения дополнительной информации смотрите DockControls
, MenuBar
, ToolBar
и описания свойства WindowStyle
в Figure Properties.
Фигура свойство MenuBar
управляет, отображает ли ваш пользовательский интерфейс стандартные меню MATLAB® на панели меню. GUIDE первоначально устанавливает значение MenuBar
к none
. Если вы хотите, чтобы ваш пользовательский интерфейс отобразил стандартные меню MATLAB, используйте Property Inspector, чтобы установить MenuBar
на figure
.
Если значением MenuBar
является none
, GUIDE автоматически добавляет панель меню, которая отображает только меню, которые вы создаете.
Если значением MenuBar
является figure
, пользовательский интерфейс отображает стандартные меню MATLAB, и GUIDE добавляет меню, которые вы создаете к правой стороне панели меню.
В любом случае можно позволить пользователю прикрепить и расстыковать окно путем установки свойства DockControls
фигуры на 'on'
.
Запустите новое меню путем нажатия на New Menu button на панели инструментов. Заголовок меню, Untitled 1
, появляется на левой панели диалогового окна.
По умолчанию GUIDE выбирает вкладку Menu Bar, когда вы открываете Редактор меню.
Кликните по заголовку меню, чтобы отобразить выбор свойств меню на правой панели.
Заполните Текстовые поля и Поля метки для меню. Например, установите текст на File
и установите Тег на file_menu
. Щелкните вне поля для изменения, чтобы вступить в силу.
Текст является текстовой меткой для пункта меню. Чтобы отобразиться & символ в метке, используйте два символа &
. Слова remove
, default
и (чувствительный к регистру) factory
резервируются. Чтобы использовать один из них как метки, предварительно ожидайте символ наклонной черты влево (\
). Например, урожаи \remove
удаляют.
Тег является вектором символов, который служит идентификатором для объекта меню. Это используется в коде, чтобы идентифицировать пункт меню и должно быть уникально в вашем файле кода.
Используйте инструмент New Menu Item, чтобы создать пункты меню, которые отображены в выпадающем меню.
Добавьте пункт меню Open под File
путем выбора File
, затем нажимающего кнопку New Menu Item на панели инструментов. Появляется временная пронумерованная метка пункта меню, Untitled
.
Заполните Текстовые поля и Поля метки для нового пункта меню. Например, установите текст на Open
и установите Тег на menu_file_open
. Щелкните вне поля для изменения, чтобы вступить в силу.
Вы можете также
Выберите акселератор алфавитной клавиатуры для пункта меню со всплывающим меню Accelerator. В сочетании с Ctrl это - эквивалент клавиатуры для пункта меню, который не имеет нижестоящего меню. Обратите внимание на то, что некоторые акселераторы могут использоваться для других целей в вашей системе и что другие действия могут закончиться.
Отобразите разделитель выше пункта меню путем проверки Разделителя выше этого элемента.
Отобразите проверку рядом с пунктом меню, когда меню будет сначала открыто путем проверки Галочки этот элемент. Проверка указывает на текущее состояние пункта меню. Смотрите, что пример в Добавление элементов к Контекстному меню.
Включите этот элемент, когда меню сначала открыто проверкой, Включают этот элемент. Это позволяет пользователю выбирать этот элемент, когда меню сначала открыто. Если вы очищаете эту опцию, пункт меню появляется, потускнел, когда меню сначала открыто, и пользователь не может выбрать его.
Задайте Функцию обратного вызова, которая выполняется, когда пользователи выбирают пункт меню. Если вы еще не не имеете сохраненный пользовательский интерфейс, значением по умолчанию является %automatic
. Когда вы сохраняете пользовательский интерфейс, и если вы не изменили это поле, GUIDE автоматически устанавливает значение с помощью комбинации Поля метки и имени файла пользовательского интерфейса. См. Пункт меню для получения дополнительной информации об определении этого поля и для программирования пунктов меню.
Кнопка View отображает коллбэк, если существует один в редакторе. Если вы еще не не имеете сохраненный пользовательский интерфейс, GUIDE предлагает вам сохранять его.
Откройте Property Inspector, где можно изменить все свойства меню путем нажатия кнопки More Properties. Для получения дальнейшей информации о свойствах, смотрите Свойства меню.
См. Пункт меню и Как Обновить Проверку Пункта меню на программную информацию и основные примеры.
Чтобы создать дополнительные выпадающие меню, используйте Новую Кнопку меню таким же образом, вы сделали, чтобы создать меню File
. Например, следующие данные также показывают Edit
выпадающее меню.
Чтобы создать подменю, выберите пункт меню, который будет заголовком для подменю, затем нажать кнопку New Menu Item. В примере ниже, Edit
является подменю.
См. Пункт меню для получения информации о программировании пунктов меню.
Следующий рисунок Редактора меню показывает три меню, заданные для панели меню фигуры.
Когда вы запускаете приложение, заголовки меню появляются в панели меню.
Контекстное меню отображено, когда пользователь щелкает правой кнопкой по объекту, для которого задано меню. Редактор меню позволяет вам задать контекстные меню и сопоставить их с объектами в размещении. Процесс имеет три шага:
См. Меню для Панели меню для получения информации об определении меню в целом. См. Пункт меню для получения информации об определении локальных функций обратного вызова для ваших меню.
Все элементы в контекстном меню являются дочерними пунктами меню, который не отображен на панели меню фигуры. Задавать родительское меню:
Выберите вкладку Menu Editor's Context Menus и нажмите кнопку New Context Menu от панели инструментов.
Выберите меню, и в Поле метки вводят тег контекстного меню (axes_context_menu
в этом примере).
Используйте кнопку New Menu Item, чтобы создать пункты меню, которые отображены в контекстном меню.
Добавьте пункт меню Blue background color
в меню путем выбора axes_context_menu
и нажатия на инструмент New Menu Item. Появляется временная пронумерованная метка пункта меню, Untitled
.
Заполните Текстовые поля и Поля метки для нового пункта меню. Например, установите текст на Blue background color
и установите Тег на blue_background
. Щелкните вне поля для изменения, чтобы вступить в силу.
Можно также изменить пункты меню этими способами:
Отобразите разделитель выше пункта меню путем проверки Разделителя выше этого элемента.
Отобразите проверку рядом с пунктом меню, когда меню будет сначала открыто путем проверки Галочки этот элемент. Проверка указывает на текущее состояние пункта меню. Смотрите, что пример в Добавление элементов к Контекстному меню. Смотрите, Как Обновить Проверку Пункта меню на пример кода.
Включите этот элемент, когда меню сначала открыто проверкой, Включают этот элемент. Это позволяет пользователю выбирать этот элемент, когда меню сначала открыто. Если вы очищаете эту опцию, пункт меню появляется, потускнел, когда меню сначала открыто, и пользователь не может выбрать его.
Задайте Коллбэк для меню, которое выполняет действие, сопоставленное с пунктом меню. Если вы еще не не имеете сохраненный пользовательский интерфейс, значением по умолчанию является %automatic
. Когда вы сохраняете пользовательский интерфейс, и если вы не изменили это поле, GUIDE автоматически создает коллбэк в файле кода с помощью комбинации Поля метки и имени файла пользовательского интерфейса. Имя коллбэка не отображается в поле Callback Редактора меню, но выбор пункта меню действительно инициировал его.
Можно также ввести команду в поле Callback. Это может быть любое допустимое выражение MATLAB или команда. Например, эта команда
set(gca, 'Color', 'y')
gca
, который не всегда надежен, когда несколько фигур или осей существуют. Вот версия этого коллбэка, закодированного как функция в файле кода:function axesyellow_Callback(hObject, eventdata, handles) % hObject handle to axesyellow (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) set(handles.axes1,'Color','y')
axes1
, неважно, к тому, к чему присоединен объект контекстное меню.Если вы вводите значение коллбэка в Редактор меню, это заменяет коллбэк для элемента в файле кода, если кто-либо был сохранен. Если вы удаляете значение, которое вы ввели в поле Callback, коллбэк для элемента в файле кода выполняется, когда пользователь выбирает тот элемент в пользовательском интерфейсе.
См. Пункт меню для получения дополнительной информации об определении этого поля и для программирования пунктов меню. Для другого примера программирования контекстных меню в GUIDE см., что Приложение GUIDE Содержит Таблицы и Графики.
Кнопка View отображает коллбэк, если существует один в редакторе. Если вы еще не не имеете сохраненный пользовательский интерфейс, GUIDE предлагает вам сохранять его.
Откройте Property Inspector, где можно изменить все свойства меню кроме коллбэков путем нажатия кнопки More Properties. Для получения дальнейшей информации об этих свойствах, смотрите ContextMenu Properties.
В Редакторе макетов выберите объект, для которого вы задаете контекстное меню.
Используйте Property Inspector, чтобы установить свойство UIContextMenu
этого объекта на имя желаемого контекстного меню.
Следующие данные показывают свойство UIContextMenu
для объекта axes
со свойством Tag
axes1
.
В файле кода завершите локальную функцию обратного вызова для каждого элемента в контекстном меню. Каждый коллбэк выполняется, когда пользователь выбирает связанный элемент контекстного меню. См. Пункт меню для получения информации об определении синтаксиса.
См. Пункт меню и Как Обновить Проверку Пункта меню на программную информацию и основные примеры.