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

ablauf durch GUI unterbrechen

 

LosTk
Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 21.05.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.05.2010, 15:02     Titel: ablauf durch GUI unterbrechen
  Antworten mit Zitat      
Hallo, gibt es eine Möglichkeit, den Ablauf eines M-Files zu unterbrechen solange eine *.fig aktiv ist. Die uiwait-Funktion stoppt mir dann auch den ganzen Ablauf der gui.m datei

Code:
%main

guitest

modul1_test;
 


so soll im Main-Programm modul1_test erst aufgerufen werden, wenn alle einstellungen in "guitest" gemacht worden sind.
hab schon versucht eine while-schleife um guitest zu machen, die dann rausspringt wenn ich den "Close"-Button gedrückt habe. Dies hat allerdings dazu geführt, dass ich mein Main-Programm nur einmal ausführen konnte und ich dann Matlab jedes Mal komplett neu starten musste.
Gibt es da einen anderen einfacheren/eleganten Weg?
Viele Grüße
Private Nachricht senden Benutzer-Profile anzeigen


steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 26.05.2010, 10:04     Titel:
  Antworten mit Zitat      
Moin,

Code:
%main

h_guitest = guitest;
uiwait(h_guitest)

modul1_test;


Das sollte eigentlich funktionieren...

Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Kevinvonderseeee

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.07.2015, 11:21     Titel: uiwait
  Antworten mit Zitat      
Hallo, ich habe das selbe Problem, bei kommt bei diesem Weg dann der fehler: "Input argument must be of type figure" , also irgendwas passt da wohl nicht mit uiwait. hast du da eine idee?
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 15.07.2015, 12:37     Titel:
  Antworten mit Zitat      
Hallo,

die Fehlermeldung besagt in der Tat, dass etwas nicht passt.
Was da nicht passt, kann man dir nur sagen, wenn du den relevanten Code zur Verfügung stellst.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Kevinvondersee

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.07.2015, 16:39     Titel:
  Antworten mit Zitat      
Code:

%startskript

a = [1 2 3 4];

a_rand = a(randperm(length(a)))

for i = 1:4    
   
    if a_rand(i) == 1
        paired_comparison('music1', 'wfs_center');
    elseif a_rand(i) == 2
        paired_comparison('speech', 'wfs_center');
    elseif a_rand(i) == 3
        paired_comparison('music1', 'wfs_multiple_o');
    elseif a_rand(i) == 4
        paired_comparison('speech', 'wfs_multiple_o');
    end

end
 


Die Funktiono paired_comparison(..) startet meine gui mit den den entsprechenden konditionen 'music1' und 'wfs center' beispielsweise. Das davor stehende soll lediglich bezwecken, dass die Reihenfolge in der die meine GUIs mit entsaprechenden Konditionen starten bei jedem Aufruf anders ist.
Und bis jetzt ist es eben so, dass meine For-schleife wohl an einem Stück durchrattert und nicht so wich es möcte eine GUI nach der anderen startet.
WÄre super, ihr wüsstet rat Smile
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 15.07.2015, 18:54     Titel:
  Antworten mit Zitat      
Hallo,

wie soll denn signalisiert werden, dass eine Ausführung der GUI beendet ist (und mit der nächsten weitergemacht werden soll)?

uiwait ist grundsätzlich der richtige Ansatz. Leider fehlt der Code, in dem uiwait verwendet wird.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Kevinvonderseeee

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2015, 11:36     Titel:
  Antworten mit Zitat      
Ich habe meinen Fehler gefunden. Und zwar musste das uiwait direkt in paired_comparison direkt bei dem gui aufruf.
danke für die hilfe. funktioniert perfekt
 
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 - 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.