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

Anfängerhilfe! kann über GUI nicht auf workspace zugreifen

 

Fabian Baumgarten
Forum-Anfänger

Forum-Anfänger


Beiträge: 25
Anmeldedatum: 27.08.12
Wohnort: ---
Version: R2012a 7.14.0.739
     Beitrag Verfasst am: 09.06.2015, 17:47     Titel: Anfängerhilfe! kann über GUI nicht auf workspace zugreifen
  Antworten mit Zitat      
hallo zusammen. Ich habe mich bisher nie mit GUI beschäftigt. Da mein neustes Programm aber doch recht umfangreich geworden ist, würde es sich anbieten das ganze per GUI zu "steuern". mit steuern meine ich dabei nichts wildes. Ich benötige lediglich ein GUI mit 6 pushbuttons, wobei jeder pushbutton eine gewisse m-file aufrufen soll.

soweit so gut. das habe ich alles innerhalb von 2 minuten hinbekommen. leider war die ganze geschichte aber doch nicht so einfach wie gedacht. das GUI scheint weder auf Variablen aus dem workspace zugreifen zu können, noch welche dort rein zu schreiben.

hier mal ein ganz einfaches beispiel:

habe einen reset button hinzugefügt. der code sieht wie folgt aus:

Code:
% --- Executes on button press in pushbutton6.
function pushbutton6_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton6 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
clearer
end


hier soll einfach nur die m-file clearer aufgerufen werden, was auch passiert, aber die m-file wird nicht korrekt ausgeführt:

Code:


hierbei wird das command window erfolgreich gelöscht, der workspace bleibt aber unberührt...

Das ist nur ein Beispiel! Ich habe wesentlich komplexere m-Files, die auf weitere m-files in Unterordnern zugreifen und Funktionen aufrufen.

vielleicht könnte mir nur jemand an Hand des einfachen Beispiels erklären, wie Ich per GUI Zugriff auf den Workspace bekomme.

Danke!

edit:
Ich glaube, ich habe da was gefunden. muss noch weiter testen, ob so alles funktioniert, aber bisher sieht es gut aus Wink

das scheint die Lösung zu sein:
Code:
% --- Executes on button press in pushbutton6.
function pushbutton6_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton6 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
evalin('base','clearer')
end


edit2:
sorry, normalerweise bin ich nicht so voreilig und spamme ein forum voll. Nach einer Stunde suchen im Netz war ichs leid und habe hier die Frage gestellt. das war echt zufall, dass ich 10 Minuten später die Antwort gefunden habe!
Private Nachricht senden Benutzer-Profile anzeigen


huhu0815
Forum-Century

Forum-Century


Beiträge: 141
Anmeldedatum: 20.02.14
Wohnort: Dresden
Version: R2013b, R2014b, R2016b, R2018a
     Beitrag Verfasst am: 09.06.2015, 18:47     Titel:
  Antworten mit Zitat      
Hallo,

Also ich hab es grad mal mit
Code:
probiert. funktioniert.
Es hat sich aber angekündigt, dass auch das GUI Objekt mit all seinen Inhalten aus dem Workspace gelöscht wird, so dass es bei weiterer Verwendung zu Problemen kommt!

Di einzige Möglichkeit, die ich hierbei sehe, dass du dir alle errechneten Variablen merkst und zum Beispiel in die handles struktur einfügst und diese dann löscht

Ich hab mal ein simples GUI beigefügt!
Hoffe ich konnte helfen

Viele Grüße

testGUI.m
 Beschreibung:

Download
 Dateiname:  testGUI.m
 Dateigröße:  3.53 KB
 Heruntergeladen:  405 mal
testGUI.fig
 Beschreibung:

Download
 Dateiname:  testGUI.fig
 Dateigröße:  4.61 KB
 Heruntergeladen:  321 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
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.