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

Fig-File laden und in Panel anzeigen?

 

bubbles

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.02.2011, 20:53     Titel: Fig-File laden und in Panel anzeigen?
  Antworten mit Zitat      
Hallo,

Um während einer Simulation Messergebnisse direkt anzeigen zu können arbeite ich gerade an einer etwas komplexeren GUI in Matlab.
Um die GUI leicht erweiterbar / editierbar zu machen, wollte ich nun einzelne Elemente in einzelnen *fig-Files erarbeiten und speichern.
Den Inhalt dieser Dateien möchte ich dann später natürlich auch entsprechend laden, jedoch nicht in einem eigenen Fenster, wie das z.B. mit open(..) der Fall wäre.
Viel mehr möchte ich anstelle eines neuen Fenster die parent-Eigenschaft selber setzen, sodass ich eine *fig-Datei z.B. in ein Panel laden könnte.
Nach ein wenig googln habe ich herausgefunden, dass man mit Hilfe von load('dateiName.fig','-mat') die Daten aus der Datei laden kann und sich dort die einzelnen Eigenschaften ansehen kann.
Meine Idee war es nun, mit Hilfe von load(..) die Datei einmalig zu "parsen" und dann die Eigenschaften jedes Elementes in der GUI auszulesen und entsprechend ein Element mit genau diese Eigenschaften zu erzeugen.

Nun meine Frage: Geht das auch einfacher (evt. mit hgload?) oder muss ich diesen relativ umständlichen Weg wirklich gehen?

Gruß


Marco H.
Forum-Guru

Forum-Guru


Beiträge: 404
Anmeldedatum: 12.11.10
Wohnort: Dortmund
Version: 2010a/2012b
     Beitrag Verfasst am: 20.02.2011, 21:46     Titel:
  Antworten mit Zitat      
Hey,
du könntest es beispielsweise so machen:
Code:

f = figure;
d = hgload('DeineGUI.fig');
set(d,'Visible','off');
c = findobj(d,'Parent',d);
set(c,'Parent',f);
delete(d);
 

Das Problem ist nur, dass du die GUI so nicht nutzen kannst, denn die ganzen Callbacks fehlen ja. Soll heißen, wenn du ein Objekt betätigst, dann gibs ne Fehlermeldung. Da ich nicht weiß was du genau damit machen möchtest und ob du die Callbacks benötigst könntest du vor dem Abspeichern der fig Datei alle Callbacks löschen bzw. eine leere Variable übergeben.
Was du vll ausprobieren könntest wäre, wenn du jeden Callback in ein seperates m-File-Function schreibst. Dann hättest du natürlich ziemlich viele m-Files aber dafür wärst du auch recht flexibel... Achja du müsstest so auch alle CreateFCN in separate m files zur Verfügung stellen (sofern du diese benutzt)...

Ich hoffe, dass ich dir ein bisl helfen konnte

MfG Marco
Private Nachricht senden Benutzer-Profile anzeigen
 
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.