hallo,
ich stelle mit Hilfe einer for-Schleife eine Art simulation dar und es klappt alles supper. dann habe ich noch ein "Stop" -button eingebaut um diese schlefe zu stoppen. leider funktionierts nicht , hoffe mir kann einer helfen!
For-Schleife:
Code:
handles.StopButton = 0;
for Stelle=Stelle:handles.metricdata.SchrittEingabe:1000;%DT_ind_max;
function StopButton_Callback(hObject, eventdata, handles) % hObject handle to StopButton (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
StopButton = 1;
handles.StopButton=StopButton;
guidata(hObject,handles)
ich hatte mal ein ähnliches Problem.
Folgender Link hat mir damals weiter geholfen:
http://blinkdagger.com/matlab/matla.....-a-long-running-function/
Aus irgendeinem Grund soll man wohl die Stop-Bedingung in das Feld "UserData" eintragen. Schau Dir mal das Beispiel an, bei mir hats funktioniert.
"Es funktioniert nicht" ist immer eine recht vage Beschreibung, so dass ich raten muss, wo denn eigentlich das Problem liegt.
Ich nehme an, das Programm macht zwar im Callback des Button ein Update des "handles" Structs per GUIDATA, aber im Hautpprogramm wird noch mit dem alten "handles" gearbeitet. Also einfach dort auch ein Update einfügen.
Gruß, Jan
andi_mm
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 03.05.2011, 18:15
Titel:
Micha85, vielen Dank! jetzt läuft alles! habe zwar eine if-Schleife in die For-Schleife eingebaut, aber es lag wirklich daran, dass man es in die UserData einbauen muss!!!
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.