WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

GUI - Ansicht speichern ?

 

Blackflight

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.10.2010, 15:39     Titel: GUI - Ansicht speichern ?
  Antworten mit Zitat      
Hallo zusammen,

ich mache zur Zeit mein Praxissemester und programmiere ein recht großes und Umfangreiches Tool mit Matlab / Guide. Es gibt etliche Panels, Textfelder etc.

Nun soll es eine Möglichkeit im Tool geben den aktuellen Programmstand zu speichern und später wieder zu laden.
Alle meine Userdaten liegen in handles.myData. Bisher ist die einzige Möglichkeit die ich gefunden habe dies zu realisieren myData in ein .mat-file zu speichern und beim laden jedes einzelne Textfeld etc wieder mit den Daten zu beschreiben.
Speichern der kompletten handlesstruktur funktioniert leider nicht.
Gibt es eine einfache Möglichkeit das Speicher/Laden zu realisieren?

Alex


stone17
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 08.07.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.10.2010, 16:54     Titel:
  Antworten mit Zitat      
Ich koennte mir vorstellen, dass man evtl direkt die fig file die vom GUIDE erstellt wird bearbeiten kann. Dort sollten ja alle Anfangswerte gespeichert sein. Also sollte man die auch veraendern koennen. Allerdings hab ich keinen Plan ob das wirklich geht.
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 19.10.2010, 12:20     Titel:
  Antworten mit Zitat      
Hallo

worüber du sprichst, machen die Befehle HGSAVE/HGLOAD/OPENFIG
Private Nachricht senden Benutzer-Profile anzeigen
 
Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 19.10.2010, 14:25     Titel:
  Antworten mit Zitat      
Hallo danny,

ich denke dies ist nicht was der Threadopener moechte. Mit deinem Vorschlag kann man doch nur das figure speichern bzw. laden. Er moechte aber allen Objecte seines Guis mit den gleichen Werten wieder laden (Editboxes, Axes...).

MFG

Sco
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 19.10.2010, 15:50     Titel:
  Antworten mit Zitat      
Doch es funktioniert so,

dazu ein Beispiel, gebe etwas in Textbox ein
Code:

h = figure;
handles.edit= uicontrol('Style', 'edit',...
       'String', '',...
       'Position', [20 320 100 20]);
handles.meineDaten= 'Das funktioniert'
guidata(h,handles)
 


Dann folgenden Code ausführen,
wie du siehst werden alle Zustände behalten.
Alles was mit GUIDATA in Figure abgespeichert worden ist,
bleibt auch erhalten.

Code:

hgsave(h,'meinefig.fig')
close all;
clear all;
h=hgload('meinefig.fig');
handles= guidata(h);
fprintf('%s\n',handles.meineDaten)
if isempty(get(handles.edit,'String'))
  fprintf('in Textbox nichts eingetragen\n')
else
   fprintf('in Textbox steht: %s\n',get(handles.edit,'String'))
end
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 19.10.2010, 16:08     Titel:
  Antworten mit Zitat      
Hallo denny,

das ist ja wirklich sehr interessant (wusste ich noch nicht). Dann sag ich mal vielen Dank und gleichzeitig natuerlich auch Sorry Embarassed . Denke das Beispiel hat auch den Threadopener geholfen Smile

MFG

Sco
Private Nachricht senden Benutzer-Profile anzeigen
 
stone17
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 08.07.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.10.2010, 00:15     Titel:
  Antworten mit Zitat      
Hi denny,
vielen Dank, das funktioniert echt super.

Ich habe im Gui im closerequestfcn folgendes eingetragen

Code:

h=gcf;
guidata(hObject,handles)
hgsave(h,'meine_GUIDE_fig.fig')
clear all
close all
 


Nachdem Neustart des Guis sind, wie du beschrieben hast, alle Einstellungen noch vorhanden.
Private Nachricht senden Benutzer-Profile anzeigen
 
Blackflight

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.10.2010, 16:31     Titel:
  Antworten mit Zitat      
Super - werde das gleich morgen ausprobieren.

Danke schonmal !
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.