|
|
subgui aus maingui schließen |
|
gui_einsteiger |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.03.2012, 12:56
Titel: subgui aus maingui schließen
|
|
Hallo,
ich habe ein Maingui und ein Subgui und möchte, dass beim schließen des Mainguis automatisch auch das Subgui geschlossen wird. Wie kann ich das ganze umsetzten. Ich habe in meinem Maingui die CloseRequestFcn und muss der ja irgendwie klar machen, dass auch GUI 2 geschlossen werden muss (über delete?)
Vielen Dank schon mal für die Hilfe
gui_einsteiger
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 08.03.2012, 13:18
Titel:
|
|
Hallo,
genau, du schließt das subgui über close oder delete unter Verwendung des entsprechenden Handles. Wo treten dabei Probleme auf?
Grüße,
Harald
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 08.03.2012, 14:00
Titel: Re: subgui aus maingui schließen
|
|
Hallo gui_einsteiger,
Man muss also die Handles der erstellten SubGUIs im MainGUI speichern, wenn sie erstellt werden. Dann muss aber auch die DeleteFcn des SubGUI den Handle wieder aus dieser Liste austragen, wenn das SubGUI manuell geschlossen wird.
Eine Alternative wäre von dem automatischen Schließen der SubGUIs per ishandle zu testen, ob das Fenster noch offen ist.
Eine weitere Idee ist den SubGUIs einen eindeutigen Tag zu geben und in der DeleteFcn des MainGUI nach diesem Tag suchen lassen, siehe FINDOBJ.
Gruß, Jan
|
|
|
gui__einsteiger |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.03.2012, 14:35
Titel:
|
|
Hallo,
mir ist bewusst, das ich am besten über ishandle nachfrage, ob mein subgui geöffnet ist und wenn dies der fall ist das subgui über delete schließe. Was mir momentan noch ein Rätsel ist, wie ich das handle der Subgui in der Maingui abfrage bzw. woher ishandle weiß, ob mein Subgui existiert oder nicht. Hab damit leider noch keine erfahrung.
Vielen Dank für eure hilfe
gui_einsteiger
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 08.03.2012, 15:21
Titel:
|
|
Hallo,
zwei Vorschläge:
1. Die Sub-GUI das Handle über die OutputFcn des Sub-GUI an das Haupt-GUI zurückgeben lassen.
2. Dem Sub-GUI ein Tag geben, damit du es so über FINDOBJ finden kannst, siehe Jans Beitrag.
Grüße,
Harald
|
|
|
gui__einsteiger |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.03.2012, 15:37
Titel:
|
|
Hallo Harald,
ich würde am liebsten Variante 1 umsetzten nur weiß ich leider nicht wie ich das in Quellcode umsetzten soll. Hab leider noch nciht so viel erfahrung im Programmieren von guis und komm mit den handles noch nicht so gut zurecht wie ich das gerne würde. kannst du mir vielleich ncoh ein wenig weiter helfen?
Viele Grüße
gui__einsteiger
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 08.03.2012, 16:56
Titel:
|
|
Hallo,
ohne deinen Code zu sehen ist das schwierig.
Ich gehe davon aus, dass du deine GUI mit GUIDE erstellst. Dann gibt es im Code eine <name>_OutputFcn. Den dort vorhandenen Code ersetzen durch
In der Haupt-GUI beim Öffnen der Sub-GUI
subh enthält dann ein Handle auf die Sub-GUI, das du in der Haupt-GUI verwenden und für weitere Verwendung abspeichern kannst.
Grüße,
Harald
|
|
|
gui_einsteiger |
Forum-Fortgeschrittener
|
|
Beiträge: 80
|
|
|
|
Anmeldedatum: 08.03.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2013b
|
|
|
|
|
|
Verfasst am: 09.03.2012, 07:33
Titel:
|
|
Hallo,
so, nun mal ein Teil von meinem Code, es funktioniert noch nicht so wie es soll.
In meiner Maingui öffne ich mein Subgui nach drücken eines Button:
Meine Requestfunktion der Maingui:
In der Subgui übergebe ich varargout das Handle:
Momentna bekomme ich beim Öffnen des zweiten Guis folgende Fehlermeldung:
??? Reference to non-existent field 'gui2'.
Error in ==> gui2>gui2_OutputFcn at 82
varargout{1} = handles.gui2;
kann mir da jemand weiterhelfen wo ich etwas falsch gemacht habe?
Vielen Dank
gui_einsteiger
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 09.03.2012, 10:10
Titel:
|
|
Hallo,
das heißt, dass das Tag der Figure wohl nicht gui2 ist. Wenn du einen Haltepunkt an der Stelle setzt, solltest du sehen, welche Felder Handles hat.
Wie gesagt: vermutlich figure1 oder durch was du das ersetzt hast.
Grüße,
Harald
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 09.03.2012, 11:11
Titel:
|
|
Hallo gui_einsteiger,
Du könntest den den Handle der SubGUI direct in the handles-Struct des Main-GUI eintragen:
Gruß, Jan
|
|
|
gui_einsteiger |
Forum-Fortgeschrittener
|
|
Beiträge: 80
|
|
|
|
Anmeldedatum: 08.03.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2013b
|
|
|
|
|
|
Verfasst am: 12.03.2012, 07:35
Titel:
|
|
Vielen Dank für die Hilfe, jetzt funktioniert es so, wie ich es mir vorgestellt habe.
|
|
|
gui_einsteiger |
Forum-Fortgeschrittener
|
|
Beiträge: 80
|
|
|
|
Anmeldedatum: 08.03.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2013b
|
|
|
|
|
|
Verfasst am: 22.03.2012, 10:50
Titel:
|
|
Hallo,
ich hab die ganze Zeit gedacht, dass mein Programm so funktioniert wie es ist. Jetzt habe ich gemerkt, dass ich wenn ich mein zweites Fenster nicht öffne ich weder Matlab noch mein Fenster1 schließen kann. Das ist ja nicht Sinn und Zweck des ganzen
Versuche ich das Fenster zu schließen, bekomme ich folgende Fehlermeldung:
??? Reference to non-existent field 'subh'.
woran kann das liegen?
Hier noch mal mein genutzter Quellcode:
CloseRequestFunction von Fenster1:
Öffnen von Fenster 2 in Fenster1
viele Grüße
gui_einsteiger
|
|
|
Gast1 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 22.03.2012, 15:36
Titel:
|
|
Hi,
Versuch es mal damit, dann wird abgefragt, ob das Feld in handles überhaupt existiert (was es vermutlich nicht tut, wenn du die 2. Gui nie offen hattest)
|
|
|
|
|
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 - 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.
|
|