kann man mit meinem Progrämmchen .mat Files aussuchen und darin enthaltene Variablen auswählen - nur eben keine structs. Hat jemand einen Anreiz oder eine Idee wie ich das einbauen könnte? Oder eventuell eine Alternative?
Was es können sollte:
Auf Knopfdruck ein listdlg - notfalls eine Listbox öffnen, die es ermöglicht mat files und structs zu durchstöbern und dann Variablen (Vektoren bzw. Matrizen) auszuwählen.
Gruß und herzlichen Dank für's Durchlesen und eventuelle Hilfe!
geprüft, ob die ausgewählte Variable eine Struktur ist oder nicht - wenn ja, öffnet sich ein neuer listdlg - nun am rumprobieren, wie ich den Inhalt der Struct da reinbekomme.
du willst wohl gleich ein bestimmtes Feld aus Struct rausholen?
dazu muss du dann aber das File vorher laden und dann Struct Felder in ListDlg ablegen.
Also es ist ein Stück komplexer, als jetzige deine Funktion.
1) Du brauchst nicht unbedingt ISSTRUCT, WHOS macht es bereits
2) FIELDNAMES, um auf Felder der Struktur zu zugreifen
3) LISTDLG um Felder anzuzeigen
4) EVALIN um zu zuweisen an deiner Variable
Hallo Denny,
leider häng ich immer noch daran. Mein Problem ist, dass ich die auszuwählende Datei einfach nicht in den Workspace bekomme.
Das Programm soll in "p2" den Pfad, also den Namen der .mat-File als String anzeigen.
"p1" soll den Namen der ausgewählten Variable als String anzeigen.
Das geht soweit eigentlich auch.
Nun will ich eben noch die ausgewählte Variable/Matrix/Vektor selbst einlesen - mit Ursprungsnamen. Über p1 weiß ich ja wie diese hießt und kann drauf zugreifen.
Aber egal wie ich es hin und herdrehe, es bringt mir Fehlermeldungen, dass der Pfad nicht stimmt - ich schaff es nicht, variabel auf die .mat-File, die darin enthaltene Structure und schließlich die darin enthaltene Variable zuzugreifen.
funktioniert insofern, dass es mir den Inhalt der ausgewählten Variable in p1 schreibt. P1 soll aber wie erwähnt der Name sein und die Variable extern mit Originalname gespeichert werden.
Damit hab ich jetzt meine p2, p1 Variable - nur die Quelldatei selbst wird als "ans" gespeichert und nicht unter ursprünglichem Namen.
Kannst du mir nochmal kurz helfen? :/
Wenn ich mit der Funktion fertig bin, kann ich das Projekt endlich abschließen. Warte da zu lange schon drauf. ^^
Hallo,
probiere einfach in allen EVALIN caller durch base zu ersetzen.
Das macht nämlich unterschied, ob Operationen in workspace durchgeführt werden, oder dort wo sie aufgerufen wurden
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.