Импорт значений из одного окна в другое в графическом интерфейсе MATLAB

StackOverflow https://stackoverflow.com//questions/25017784

Вопрос

Предположим, что у меня есть кнопка в окне, при нажатии на которую появляется новое окно.Я вызываю это окно (с именем My_New_Window) с этим синтаксисом:

My_New_Window();

Я хочу вставить некоторые значения в это новое окно из главного окна.Я знаю, что могу использовать setappdata или getappdata для этой цели, но есть ли другой способ?Например, такой синтаксис:

My_New_Window(Values);

Другой вопрос.Когда мы используем setappdata или getappdata, где MATLAB хранит эти данные?В оперативной памяти или на жестком диске?

Это было полезно?

Решение

  1. Да, вы можете использовать My_New_Window(Values); Например, в GUIDE любые параметры, которые вы передаете в свой графический интерфейс, вы можете обрабатывать в OpeningFcn используя свой varargin вход.Просто назначьте varargin на ваш handles структура и использование guidata(hObject, handles);

  2. Касательно setappdata - в соответствии с эта книга данные хранятся внутри «объекта».Поскольку объекты находятся в памяти, можно с уверенностью предположить, что они действительно хранятся в оперативной памяти.

Другие советы

Вы можете хранить данные в свойстве UserData графического интерфейса:

set(handletoFigure,'UserData',Values);

когда вы открываете другой графический интерфейс, вы получаете информацию:

Values = get(handletoFigure,'UserData);

Есть ли причина, по которой вы не хотите использовать setappdata/getappdata?

Что касается вашего второго вопроса, я не знаю, извините.Хотя я думаю, что дело в ОЗУ

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top