Как получить доступ к переменной базовой рабочей области из конструктора приложений Matlab?

У меня есть переменная (массив ячеек), созданная в базовом рабочем пространстве в Matlab. Я строю приложение в appdesigner, чтобы получить доступ к переменной базового рабочего пространства и найти транспонирование при нажатии кнопки.

когда я пытался использовать переменную в функции обратного вызова, я получаю сообщение об ошибке:

неопределенная функция или переменная, хотя переменная определена в базовом рабочем пространстве.

Пожалуйста, помогите мне с решением.

1 ответ

Решение

Я буквально вчера получил Matlab 2016, и я не пробовал то, что вы пытаетесь, но я предполагаю, что это похоже на похожие сценарии в функциях. Я думаю, вы можете попробовать это:

localVariableInCallback = evalin('base','nameOfVariableInWorkspace');

куда

  • localVariableInCallback является локальной переменной в функции обратного вызова
  • nameOfVariableInWorkspace - это переменная в вашем базовом рабочем пространстве

Ссылка: документация Matlab 'evalin': https://uk.mathworks.com/help/matlab/ref/evalin.html

Я заметил, что вы отправили один и тот же вопрос дважды, и его проголосовали. Я настоятельно рекомендую вам взглянуть на то, что они предложили, и предоставить минимальный, полный и проверяемый пример для ваших вопросов.

Другие вопросы по тегам