Wenn die Figure nicht existiert, ist f leer (Abfrage mit isempty). Falls es existiert, ist f ein Handle auf diese figure, und das Fenster kann mit figure(f) aktiv gesetzt werden.
Grüße,
Harald
Tim98765
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 09.01.2010, 10:51
Titel: Aktuelles fenster wieder öffnen
noch eine Frage,
wie erreiche ich denn, dass ich das gleiche (aktuelle) Fenster wieder öffne wenn ich zum Beispiel mit einem Pushbutton ein Festern auf mache.
Ich möchte vermeiden dass ich bei jedem klick ein neues Fenster bekomme!
Normalerweise sind solche GUI-Abfragen nicht zeitkritisch, weil jede Benutzer-Interaktion sowieso langsamer ist. Dennoch könnte es in manchen Fällen hilfreich sein, die Suche mit FINDOBJ einzuschränken und Rechenzeit (== Energie) zu sparen:
Code:
f = findobj(allchild(0), 'flat', 'type', 'figure', 'name', 'test');
Hier sorgt 'flat' dafür, dass nur die Figure-Objekte getestet werden, andernfalls werden alle erreichbaren Handle-Graphics-Objekte überprüft. Je nach Anzahl der offenen Fenster und eingezeichneten Objekte kann FINDOBJ mit 'flat' 10 bis 100 mal schneller sein.
Um genau zu sein, sind eigentlich alle ALLCHILD(0) Objekte vom Type 'Figure', so dass man dies nicht nochmal testen müsste. Das hat aber auf die Geschwindigkeit aber keinen nennenswerten Einfluss.
Trotzdem, wie reden hier von Millisekunden. Also wenn man es nicht 1000 mal macht, wird man es schwerlich bemerken können. Wenn man es 1e6 mal macht, hat man jedoch schon eine Kaffeepause gespart...
Gruß, Jan
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
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.