Frage

Angenommen, ich habe eine Schaltfläche in einem Fenster, auf die beim Klicken ein neues Fenster angezeigt wird.Ich nenne dieses Fenster (mit dem Namen von My_New_Window) mit dieser Syntax:

My_New_Window();

Ich möchte einige Werte aus dem Hauptfenster in dieses neue Fenster einfügen.Ich weiß, dass ich verwenden kann setappdata oder getappdata zu diesem Zweck aber gibt es einen anderen Weg dazu?Zum Beispiel wie diese Syntax:

My_New_Window(Values);

Eine andere Frage.Wenn wir verwenden setappdata oder getappdata, wo speichert MATLAB diese Daten?Im RAM oder auf der Festplatte?

War es hilfreich?

Lösung

  1. Ja, Sie können verwenden My_New_Window(Values); Zum Beispiel können Sie in GUIDE alle Parameter, die Sie an Ihre GUI übergeben, in der OpeningFcn mit seiner varargin Eingang.Einfach zuweisen varargin zu Ihrem handles struktur und Verwendung guidata(hObject, handles);

  2. Betreffen setappdata - GEM dieses Buch die Daten werden in einem "Objekt" gespeichert.Da sich Objekte im Speicher befinden, kann davon ausgegangen werden, dass sie tatsächlich im RAM gespeichert sind.

Andere Tipps

Sie können Daten in der GUI-Benutzerdateneigenschaft speichern:

set(handletoFigure,'UserData',Values);

wenn Sie die andere GUI öffnen, rufen Sie die Informationen ab:

Values = get(handletoFigure,'UserData);

Gibt es einen Grund, warum Sie setappdata / getappdata nicht verwenden möchten?

Was deine 2. Frage betrifft, weiß ich nicht, tut mir leid.Ich denke, es ist der RAM, obwohl

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top