Ich schreibe gerade ein Programm, um ein Messgerät anzusteuern.
Das Ganze soll mit einer GUI realisiert werden. Auf der Benutzeroberfläche kann man z.B. den Frequenzbereich verändern. Es soll einen Push Button "Messen" geben. Wenn man auf diesen drückt, soll das Messgerät die Messdaten von 4 Messungen liefern und diese sollen in 4 Graphen ausgegeben werden.
Das ganze Programm funktioniert soweit, allerdings mit einem Fehler. Ich kann die Messung nur einmal durchführen. Wenn ich den Frequenzbereich dann verändere und erneut auf "Messen" drücke, erhalte ich eine Fehlermeldung.
Ich hätte es aber gerne so, dass ich die Messung mehrmals durchführen kann. Wie kann ich das realisieren?
Bei meiner Recherche im Internet stieß ich auf die Befehle
uiwait(handles.figure1)
und uiresume(handles.figure1)
Ich wüsste aber nicht, wo ich diese platzieren sollte, weil ich deren Sinn nicht ganz verstehe.
Oder muss ich das ganze mit einem toggle button lösen?
Wenn ich das erste mal auf den pushbutton1 drücke, erstellt es mir die 4 gewünschten plots.
Beim zweiten Klick auf pushbutton1 erhalte ich folgenden Fehler:
??? Error using ==> icinterface.fopen at 83
The specified configuration is not available.
Use INSTRFIND to determine if other instrument objects are connected
to the requested instrument.
Error in ==> nwasetup at 37
fopen(nwa);
Error in ==> gui3>pushbutton1_Callback at 128
nwa = nwasetup;
Error in ==> gui_mainfcn at 96
feval(varargin{:});
Error in ==> gui3 at 42
gui_mainfcn(gui_State, varargin{:});
Error in ==> @(hObject,eventdata)gui3('pushbutton1_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
Hängt der Fehler also mit einem der Unterprogramme zusammen?
mit nwasetup wird ein Unterprogramm aufgerufen. In diesem Unterprogramm wird mit fopen(nwa) eine Datei mit dem FID nwa geöffnet. Liegt das Problem einfach darin, dass ich beim erneuten Drücken des Pushbutton1 die Datei noch einmal versuche, zu öffnen, und es dann zu einem Fehler kommt?
Dann sollte ich den Befehl
Ich habe aber noch ein Problem:
Wenn ich versuche, das Gui-figure zu schließen, erhalte ich folgende Fehlermeldung:
??? Error using ==> feval
Undefined function or method 'figure1_CloseRequestFcn' for input arguments of type 'struct'.
Error in ==> gui_mainfcn at 96
feval(varargin{:});
Error in ==> gui3 at 42
gui_mainfcn(gui_State, varargin{:});
Error in ==> @(hObject,eventdata)gui3('figure1_CloseRequestFcn',hObject,eventdata,guidata(hObject))
??? Error while evaluating figure CloseRequestFcn
Ich muss es dann immer per Taskmanager schließen.
Und noch eine Frage: Kann man das irgendwie einrichten, dass das Gui-Figure in der Größe variabel ist? Im Moment ist das "Maximieren"-Symbol noch nicht aktiviert.
Ich verstehe aber nicht, was ich mit uiwait und uiresume jetzt eigentlich bewirkt habe. Kann mir das jemand erklären?
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.