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

Wert in Cellarray des Workspaces

 

Sebbl
Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.10.2009, 14:49     Titel: Wert in Cellarray des Workspaces
  Antworten mit Zitat      
Hi,

ich weiß, dass ich schonmal so eine ähnliche Frage hier gestellt habe Smile
Ich möchte gern einen den Wert des aktuellen Editierfeldes in der dazugehörigen Callback-Function in ein Cell-Array (Var) des Workspaces schreiben.

Derzeit versuche ich es mit :

Code:

evalin('base',['Var{5,3}=' get(hObject,'String')]);
 


Als Fehlermeldung erhalte ich : ??? Undefined function or method 'evalin' for input arguments of type 'cell'.

Kann mir jemand mit dem richtigen Syntax helfen ?

Gruß Sebbl
Private Nachricht senden Benutzer-Profile anzeigen


Titus
Forum-Meister

Forum-Meister


Beiträge: 871
Anmeldedatum: 19.07.07
Wohnort: Aachen
Version: ---
     Beitrag Verfasst am: 12.10.2009, 09:54     Titel:
  Antworten mit Zitat      
Hallo,

je nach dem, wie der erste Wert aussah, ist das, was Du mit get() bekommst, ein Cell-Array von Strings, kein String. Damit ist der zusammengesetzte String auch kein String sondern ein Cell-Array. Hilft das weiter?

Darf ich fragen, warum die Variable in den Base-Workspace geschrieben werden soll?

Ciao,
Titus
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.10.2009, 10:50     Titel:
  Antworten mit Zitat      
Hi Titus,

ich kann mir vorstellen worauf du hinaus willst...
habe mir schon sowas gedacht...
trotzdem weiß ich leider nicht wie ich es umsetzen soll.

Zur genaueren Beschreibung :
Ich habe ein Cell-Array, in welchem ich meine Variablen speichere
mein Cell-Array Var ist wie folgt aufgebaut :
Beschreibung | Variablenname | Wert
Widerstand | R | 25
....

Dieses Cellarray speichere ich in einem mat-file und lese dieses zu beginn ein und hinterlege es im Workspace.
Da ich Beschreibung, Variablenname und Wert über Editierfelder verändern kann, verwende ich deren Callback-Funktionen um die Änderung zu bestätigen. Dazu möchte ich den Wert in das Cellarray (Var) des Workspaces schreiben.

Gruß Sebbl
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.10.2009, 14:20     Titel:
  Antworten mit Zitat      
Hm,

hat keiner ne Idee ?
Ich habe jetzt herausgefunden, dass ich Zahlen in die Editierfelder schreiben kann. D.h. Spalte 3 kann ich so füllen, wie ich es in meinem ersten Beitrag erwähnt hatte.

Nur der Umgang mit Strings funktioniert irgendwie nicht so, wie ich es mir vorstelle.

aktuelle Fehlermeldung, wenn ich test in das Editierfeld schreibe :
??? Error using ==> evalin
Undefined function or variable 'test'.

verwendeter Code :

Code:

evalin('base',['Var{18,2}=' get(hObject,'String')]);
 


Hinweis: Am liebsten würde ich für die Felder, welche die Spalten 1 und 2 die Einträge fest als String (bzw. Text) übergeben.

Gruß Sebbl

Zuletzt bearbeitet von Sebbl am 12.10.2009, 15:34, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.10.2009, 15:33     Titel:
  Antworten mit Zitat      
Hey Leute,

also ich war heute nicht so wirklich produktiv und bin nun eher durch Zufall auf :

Code:

assignin('base','Value',get(hObject,'String'));
evalin('base','Var{16,2}=Value');
 


gekommen.
Damit funktioniert es...
Nur leider kann ich mir nicht so recht erklären, warum ich den Inhalt des Editierfeldes erst in den Workspace schreiben muss, um ihn dann zum schreiben des Cell-Array-Wertes verwenden zu dürfen.

Kann mir das vielleicht jemand erklären ?
.. oder kennt jemand einen besseren Weg ?

Gruß Sebbl
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.