Pushbutton/Callbackfunktion < Matlab < Mathe-Software < Mathe < Vorhilfe
|
| Status: |
(Frage) für Interessierte | | Datum: | 20:08 Mo 13.09.2010 | | Autor: | Haase |
| Aufgabe | Aufgabe:
Ich habe einen GUI-Button. Wenn dieser gedrückt wird, soll seine Callbackfunktion aufgerufen werden. |
Guten Tag Allerseits,
ich hoffe ihr könnt mir weiterhelfen.
Problem:
Es kann nur die Callback-Funktion aufgerufen werden, wenn Matlab nicht rechnet, sprich die "pause(x sekunden)" aktiv ist.
Fehlermeldung:
... wenn der GUI-Button während des hochzählens gedrückt wird:
??? Error using ==> drawnow
Error while evaluating uicontrol Callback
Beispiel:
| 1: | figure();
| | 2: | uicontrol('Style', 'pushbutton','String', 'zeigenachricht', 'Position', [0 0 100 100], 'Callback', 'showmsg');
| | 3: |
| | 4: | while 1
| | 5: | for i=1:200
| | 6: | cprintf('text','%d ',i);
| | 7: | end
| | 8: | %clc;
| | 9: | disp('start pause'); pause(2); disp('end pause');
| | 10: | end
| | 11: |
| | 12: | function showmsg()
| | 13: | disp('diese nachricht erscheint nur in der pause... nicht wenn gezählt wird');
| | 14: | end |
Vielen Dank im Voraus!
Gruß Haase
|
|
| |
|
| Status: |
(Mitteilung) Reaktion unnötig | | Datum: | 13:02 Mi 15.09.2010 | | Autor: | Haase |
Problem gelöst! Nachdem ich die Callback-Funktion in einer eigenen .m Datei hineinkopiert habe, funktioniert das Drücken des Buttons während Matlab rechnet/Video anzeigt/etc. Wenn die Callback-Funktion jedoch in der selben Klasse außerhalb oder als Innerclass definiert wird, kommt die Fehlermeldung.
|
|
|
|