установка рабочего пространства графического интерфейса в качестве текущего рабочего пространства - PullRequest
1 голос
/ 25 марта 2012

Я пишу программу с графическим интерфейсом с помощью matlab, и я хотел бы проверить мои переменные, чтобы увидеть, правильно ли они импортированы, и проверить, как получить доступ к различным частям импортируемых переменных, поэтому я хочу, чтобы мои переменные отображались в окне рабочей области.основной проблемы Matlab Desktop, если я напишу общую программу в редакторе mfile, после запуска программные переменные будут показаны в окнах рабочей области, но для программ с графическим интерфейсом это не так. И если я сохраню рабочую область моей программы по пути Файл> СохранитьРабочая область как ... в MFile Editor, и затем я пытаюсь открыть этот файл доступа на рабочем столе, с которым я сталкиваюсь Переменные не созданы Как я могу получить доступ к рабочей области моего графического интерфейса?

1 Ответ

1 голос
/ 25 марта 2012

Если это просто для проверки, самый простой способ - использовать отладчик : установить точку останова в одном из обратных вызовов графического интерфейса, выполнение кода останавливается и позволяет вам проверять рабочее пространство,среди прочего.

Если вы хотите, чтобы графический интерфейс возвращал данные в основное рабочее пространство, вы добавляете строку uiwait(hObject) в конец функции открытия.Затем обратный вызов, например, кнопки ОК, должен иметь строку handles.Output=myData; guidata(hObject,handles); для отправки переменной myData на выход GUI, после чего следует uiresume(hObject).Таким образом, вы можете назвать свой GUI как myData = myGUI;, и myData в базовом рабочем пространстве будет заполнено любыми данными, которые ему дает обратный вызов OK, когда нажата кнопка OK.

Примечание. Функции присваивают выходные данные, а не внутренние переменные, базовой рабочей области.Поэтому я предполагаю, что то, что вы описываете как «функции в редакторе», на самом деле являются сценариями, которые получают доступ и изменяют содержимое рабочей области, из которой они вызываются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...