Миграция приложений GUIDE к App Designer

App Designer является рекомендуемой средой для создания приложений. Миграция ваших приложений GUIDE (графический интерфейсы пользователя) к App Designer позволяет вам использовать в своих интересах функции, которые не предлагает GUIDE. Например, App Designer обеспечивает:

  • Расширенный набор компонента пользовательского интерфейса и среда проектирования

  • Устойчивый редактор программирования и рабочий процесс

  • Способность создать и совместно использовать автономное настольное приложение или веб-приложение (требует MATLAB® Compiler™),

Если у вас есть существующие приложения, которые вы разработали в GUIDE, рассмотрите миграцию их к App Designer с помощью GUIDE для Инструмента Миграции App Designer для MATLAB на mathworks.com.

Функции инструмента миграции

Инструмент миграции помогает вам преобразовать свои приложения путем чтения в GUIDE файла .fig и автоматически генерации App Designer эквивалентные компоненты, размещение и код в файле .mlapp. Это полуавтоматическое преобразование кода также создавание отчета миграции, который предлагает следующие шаги для любых ручных обновлений кода, которые могут быть необходимы. Некоторые функции инструмента описаны в приведенной ниже таблице.

Функции инструмента миграцииОписание
Преобразование файлаСчитайте в GUIDE файл .fig и сопоставленный код и затем сгенерируйте файл .mlapp App Designer.
Компоненты и размещение приложения
  • Преобразуйте компоненты и настройки свойства к эквивалентам App Designer.

  • Сохраните размещение приложений.

Код коллбэка
  • Сохраните копию кода коллбэка GUIDE и пользовательских функций в файле .mlapp.

  • Обеспечьте предложения для ручного обновления.

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

Отчет миграции
  • Обобщите действия, успешно завершенные инструментом миграции.

  • Перечислите любые ограничения или неподдерживаемую функциональность с обходными решениями при наличии.

  • Обеспечьте шаги для обновления коллбэков, чтобы сделать их совместимыми с App Designer.

Средства для миграции кода GUIDE к App Designer

App Designer и GUIDE имеют различные структуры кода, синтаксисы коллбэка и методы для доступа к компонентам пользовательского интерфейса и обмена данными. Понимание этих различий полезно при миграции кода. Приведенная ниже таблица обобщает некоторые из этих различий.

РазличиеGUIDE Дизайнер приложенийБольше информации
Используя фигуры и графику

GUIDE вызывает функцию figure, чтобы создать окно приложения.

GUIDE вызывает функцию axes, чтобы создать оси для отображения графиков.

Все функции графики MATLAB поддерживаются. Нет никакой потребности задать целевые оси.

App Designer вызывает функцию uifigure, чтобы создать окно приложения.

App Designer вызывает функцию uiaxes, чтобы создать оси для отображения графиков.

Поддерживается большинство функций графики MATLAB. Необходимо задать целевые оси.

Отображение графики в App Designer
Используя компоненты

GUIDE создает большинство компонентов с функцией uicontrol. Меньше компонентов доступно.

App Designer создает каждый компонент пользовательского интерфейса со своей собственной специализированной функцией. Больше компонентов доступно, включая Tree, Gauge, TabGroup и DatePicker.

Компоненты App Designer
Доступ к свойствам компонентов

GUIDE использует set и get, чтобы получить доступ к свойствам компонентов, и использует handles, чтобы задать компонент.

Например,
name = get(handles.Fig,'Name')

App Designer поддерживает set и get, но поощряет использование записи через точку получать доступ к свойствам компонентов и использует app, чтобы задать компонент.

Например,
name = app.UIFigure.Name

Запись обратных вызовов в App Designer
Код приложения управления

Код задан как основная функция, которая может вызвать локальные функции. Весь код доступен для редактирования.

Код задан как класс MATLAB. Только коллбэки, функции помощника и пользовательские свойства доступны для редактирования.

Код управления в представлении кода App Designer
Запись коллбэков

Необходимыми входными параметрами коллбэка является handles, hObject и eventdata.

Например,
myCallback(hObject,evendata,handles)

Необходимыми входными параметрами коллбэка является app и event.

Например,
myCallback(app,event)

Запись обратных вызовов в App Designer
Обмен данными

Чтобы сохранить и осуществлять обмен данными между коллбэками и функциями, используйте свойство UserData, структуру handles, или guidata, setappdata или функции getappdata.

Например,
handles.currSelection = selection;
guidata(hObject,handles);

Чтобы сохранить и осуществлять обмен данными между коллбэками и функциями, используйте пользовательские свойства создать переменные.

Например,
app.currSelection = selection

Осуществляйте обмен данными в рамках приложений App Designer

Похожие темы