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

GUI DATEI EXIST BEFEHL! BITTE UM DRINGENDE HILFE!

 

NeuerNoob

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.11.2012, 02:56     Titel: GUI DATEI EXIST BEFEHL! BITTE UM DRINGENDE HILFE!
  Antworten mit Zitat      
Hi,

erst mal danke für die, die zumindest hier rein schauen.

Das Problem:

Habe eine GUI diese soll bei einem bestimmten Button folgende Aktion ausführen:

Überprüfen ob bestimmte MAT-Datei im Ordner vorhanden ist
wenn ja laden und eine bestimmte Aktion ausführen.
Wenn Nein neue cell-array/Struktur anlegen und dann bestimmte Aktion durchführen.

Wenn ich das im Workspace eingebe funktioniert es mit Hilfe der GUI nicht.

Code:

If exist('XYZ.mat','file')
load XYZ.mat
(Dann Aktion ausführen)
else
(Aktion ausführen)
end
 


so in der Art soll es aussehen.
Der code stimmt hier nicht 100% glaube ich aber zum verständiss sollte es reichen.

Ich vermute das ich ein assignin oder evalin vergesse.
Hab es aber ausprobiert aber iwie kriege ich das nicht hin.

Ich danke schon mal im Voraus.


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 25.11.2012, 09:26     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Wenn ich das im Workspace eingebe funktioniert es mit Hilfe der GUI nicht.

"Im Workspace eingeben" ergibt wenig Sinn. Ich vermute, du meinst im Command Window, oder in einem Skript außerhalb der GUI?
Was genau funktioniert in der GUI nicht? Gibt es eine Fehlermeldung? Welche?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
NeuerNoob

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.11.2012, 11:19     Titel:
  Antworten mit Zitat      
Hallo Harald,
danke erst mal für deine Antwort.
War wohl zu spät gestern, natürlich mein ich das Command window.

Wenn ich den Button drücke passiert eigentlich nichts er lädt die Datei nicht in den Workspace,zeigt aber auch kein Fehler an.

Kann es ich die Datei nach dem load Befehl vom "Caller"-Workspace (heisst das so?) ins "Base"-Workspace "kopieren" muss. und dann noch einmal nach der Aktion ?

Danke für deine Hilfe
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 25.11.2012, 22:26     Titel:
  Antworten mit Zitat      
Hallo,

es sieht nur so aus, als ob gar nichts passiert. Die Datei wird wie von dir vermutet in den Workspace der Funktion geladen, wo der Code ausgeführt wird.
Ansätze mit EVALIN oder ASSIGNIN sind schwer nachzuvollziehen und zu debuggen und daher verpönt. Diese Seite liefert einen Überblick über "vernünftige" Möglichkeiten, in GUIs mit Daten umzugehen:
http://www.mathworks.de/de/help/mat.....-guide-gui.html#f5-998711

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 26.11.2012, 09:46     Titel:
  Antworten mit Zitat      
Hallo NeuerNoob,

Zitat:
Wenn ich den Button drücke passiert eigentlich nichts er lädt die Datei nicht in den Workspace,zeigt aber auch kein Fehler an.

Wenn Du welchen Button drückst? Meinst Du den WorkSpace der Unterfunktion des GUIs oder den Base-WorkSpace, der vom CommandWindow aus erriechbar ist?

Es ist eine gute Idee, beim Programmieren niemals zu versuchen, in andere WorkSpaces zu schreiben, da dies das Debuggen erschwert: Man kann beim Lesen des Codes nicht mehr nachvollziehen, welche Variable woher stammt.

Bitte poste mehr Details, damit wir das Problem besser verstehen können.

Gruß, Jan

PS. In GROSSBUCHSTABEN zuschreiben bedeutet in Internetforen übrigens zu schreien. Für den Titel einer Frage ist das also weniger geeigent.
"Dringend" schreckt einige der freiwilligen Helfer ab. In anderen Foren wird "urgent" sogar als Frechheit empfunden und die Frage deshalb ignoriert. In goMatlab habe ich bisher keine Beschwerden darüber gelesen, aber ich rate trotzdem davon ab, Leute die in ihrer Freizeit Lust haben, Probleme anderer zu lösen, in irgendeiner Art zu drängeln. Natürlich ist es klar, dass Dein Problem für Dich dringend ist. Das gilt aber wohl für mindestens 98% der Fragenden. Regel: Es gilt als "dringend", wenn die Socken, die man an den Füßen trägt, brennen.
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 - 2025 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.