|
|
Alle vom dem HauptGUI erstellten Figures anzeigen |
|
stealth_mx |
Forum-Fortgeschrittener
|
|
Beiträge: 94
|
|
|
|
Anmeldedatum: 15.06.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2013b
|
|
|
|
|
|
Verfasst am: 11.03.2015, 15:16
Titel: Alle vom dem HauptGUI erstellten Figures anzeigen
|
|
|
|
|
Hallo,
ich habe in meinem Haupt GUI, die möglichkeit an mehreren Projekten gleichzeitig parallel zu arbeiten, um z.B. die Ergebnisse vergleichen zu können.
Alle Projekte sind in einer Liste. Ich kann mir also einen Eintrag ausschen und ihn anschließend öffnen. Dafür erstelle ich ein neues Fenster und initialisiere alles aus dem Projektspeicher.
Ich möchte jetzt verhindern, dass ein Projekt zweimal geöffnet wird. Jedes Projekt hat eine einmaligen Namen, diesen Namen nutze ich auch um die Fenster zu unterscheiden.
Wie kriege ich alle geöffneten Fenster meines HauptGUIs raus?
Ich möchte
Zitat: |
figHandles = findobj('Type','figure');
figHandles = findall(0,'Type','figure'); |
nicht nutzen, da ich nicht davon ausgehen will, dass ich der einzige Benutzer des Base Speichers bin.
Außerdem möchte ich, wenn ich das HauptGUI schließe alle geöffnten Projekte mitschließen. Ohne dabei alle Fremdfenster mitzuschließen.
Minibeispiel
Liste = Projekt_1, Projekt_2, Projekt_3
Ich öffne jetzt Projekt_1 und Projekt_3
Nun habe ich zwei offene Fenster neben meinem GUI.
Wenn ich jetzt im HauptGUI versuche Projekt_1 zu öffnen möchte ich einen Fehler bekommen, dass das Projekts bereits geöffnet ist.
Jetzt schließe ich das HauptGUI und sowohl Projekt_1 als auch Projekt_3 schließen mit.
Weiß jemand wie ich es realisieren kann?
Grüße
|
|
|
|
|
Lord nibbler |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.03.2015, 08:31
Titel:
|
|
Hallo stealth_mx,
Da die figures nicht abhängig voneinander sind kommst du über children nicht weiter.
Ich würde den figures einen bestimmten Tag mitgeben. Z.B.
Dann kannst du mit findobj oder findall sicher sein genau die Fenster zu finden die du suchst.
Dann kannst du übeprüfen ob das entspechende Fenster z.B. über den Namen oder ein anderes Attribut, dass du vergibst z.B. bei UserData Projekt_1 oder Projekt_2 ist.
Gruß Lord nibbler
|
|
|
stealth_mx |
Themenstarter
Forum-Fortgeschrittener
|
|
Beiträge: 94
|
|
|
|
Anmeldedatum: 15.06.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2013b
|
|
|
|
|
|
Verfasst am: 12.03.2015, 10:40
Titel:
|
|
Hi, ja habe das jetzt so umgesetzt. Funktioniert auch wie es soll, aber wirkt irgendwie nicht sonderlich clever die Methode.
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 12.03.2015, 14:16
Titel: Re: Alle vom dem HauptGUI erstellten Figures anzeigen
|
|
Hallo stealth_mx,
Ich verwende für die Identifikation von "Unter-Fenstern", die zu einem Haupt-GUI gehören, entweder auch die Tags, oder ich speichere die Handles der neu erstellten Unter-Fenster in den ApplicationData oder UserData des Main-GUI. In der DeleteFcn des Main-GUI werden dann alle diese Fenster ebenfalls geschlossen, wobei vorher noch überprüft wird, ob sie bereits von Hand geschlossen wurden. In den DeleteFcn der Unterfenster kann man auch Code eintragen, der den Handle in den ApplicationData des Haupt-GUI wieder entfernt.
Gruß, Jan
|
|
|
stealth_mx |
Themenstarter
Forum-Fortgeschrittener
|
|
Beiträge: 94
|
|
|
|
Anmeldedatum: 15.06.13
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2013b
|
|
|
|
|
|
Verfasst am: 12.03.2015, 14:26
Titel:
|
|
Also du merkst einfach in dem HauptGUI was für Fenster du öffnest bzw welche du schließt. Und am Ende bzw wann immer du es auch brauchst fragst du ob das Fenster offen/geschlossen ist. Daran habe ich auch gedacht, aber ging davon aus, das es irgendwie "einfachere" Variante gibt.
Nagut danke für die Info.
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| RSS
Hosted by:
Copyright © 2007 - 2024
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.
|
|