Frage

Ich habe ein Matlab Timer-Objekt. Es ist eine globale Variable FOO Aktualisierung einmal pro Sekunde.

Ich habe eine Matlab GUIDE GUI, mit ein paar Kontrollen und einem einzigen Plotrahmens. Der Plotrahmens wird von einigen der GUI-Controls aktualisiert, und es wird durch das Timer-Objekt aktualisiert.

Grundsätzlich gibt es zwei globale Variable FOO und BAR. Die Timer-Updates FOO, die GUI steuert Updates BAR. Updates entweder FOO oder BAR müssen die GUI aktualisieren.

Wie dies zu tun?

Danke John

War es hilfreich?

Lösung

Sie können nicht eine Uhr auf eine Variable setzen. Es gibt keinen Rückruf dafür. Doch sowohl FOO und BAR entweder aktualisiert werden:


FOO von timerFcn

BAR durch Widget Rückrufe


Sie müssen eine Funktion machen:

updatePlot% den Plot aktualisiert neue Werte von FOO oder BAR zu reflektieren

und hat beiden Funktionen, die entweder FOO oder gesperrten updatePlot als eines ihrer letzten Aufgaben aktualisieren.

Ich würde auch empfehlen, gegen globale Variablen. Es gibt bessere Möglichkeiten, dies zu tun. Ich bin ein Fan von GETAPPDATA und SETAPPDATA. Schau dir das Video, das ich über sie gemacht.

http: //blogs.mathworks. com / Videos / 2005/10/03 / Guide-Video-Teil-zwei /

Sie können auch verschachtelte Funktionen versuchen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top