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

1 Wert in einer Matrix überschreiben

 

Sebbl
Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.08.2009, 13:46     Titel: 1 Wert in einer Matrix überschreiben
  Antworten mit Zitat      
Hi,

ich habe ein kleines Problem mit dem schreiben einer Zahl in eine bereits im Workspace vorhandene Matrix

Und zwar nenne ich meine Matrix param:

diese sieht zum Anfang so aus :
[1 2 3 4 5 6 7 8]
nun möchte ich aus edit1 durch den Callback den Wert auslesen und diesen in
in param an Stelle 2 schreiben.
mal angenommen ich schreibe 10.1 in edit1 dann sollte param danach so aussehen:
[1 10.1 3 4 5 6 7 8]

zur Zeit versuche ich es so, aber das ist falsch Very Happy

Code:

function edit1_Callback(hObject, eventdata, handles)

assignin('base', param(0,2), str2double(get(handles.edit1')));
 


Kann mir vielleicht jemand auf die Sprünge helfen ?

Gruß
Sebbl
Private Nachricht senden Benutzer-Profile anzeigen


steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 10.08.2009, 14:22     Titel:
  Antworten mit Zitat      
Moin,

mach es so:
Code:
evalin('base',['param(2)=' get(hObject,'String')]);


Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.08.2009, 14:42     Titel:
  Antworten mit Zitat      
Hey alex,

funktioniert leider nicht...
Außerdem will doch die Daten in die Matrix schreiben und sie nicht auslesen !
evalin ist doch zum auslesen, oder täusche ich mich da ?

Gruß Sebbl
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 10.08.2009, 14:51     Titel:
  Antworten mit Zitat      
Kommt eine Fehlermeldung?

EVALIN kann zum Auslesen verwendet werden. Wenn du dir die Hilfe dazu anschaust, dann wirst du sehen, dass es einfach wie EVAL arbeitet, nur in dem spezifizierten WS.

Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.08.2009, 15:08     Titel:
  Antworten mit Zitat      
hmm okay... habs jetzt auch gelesen Embarassed
Fehlermeldung wird keine ausgegeben .

Gruß Sebbl
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 10.08.2009, 15:33     Titel:
  Antworten mit Zitat      
Hmm, also bei mir funktioniert es, allerdings ohne das "get()". Probier sonst erstmal, ob dieses funktioniert:
Code:
evalin('base','param(2)=1001;');


Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.08.2009, 15:48     Titel:
  Antworten mit Zitat      
mhh,

also das funktioniert Very Happy
nur das mit dem auslesen der Daten aus dem Feld funktionierts irgendwie nicht Sad

Gruß Sebbl
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 10.08.2009, 16:37     Titel:
  Antworten mit Zitat      
Liest Matlab denn den Wert richtig aus? Wenn ja, dann probiere mal
Code:
str = sprintf('param(2) = %s;', get(hObject, 'String');
evalin('base',str);

_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.08.2009, 18:12     Titel:
  Antworten mit Zitat      
irgendwie scheint Matlab die Zelle nicht richtig auszulesen

Fehlermeldung :
??? Error using ==> sprintf
Function is not defined for 'cell' inputs.

Error in ==> Motorauswertung>edit_LD_M_Callback at 728
str = sprintf('param(2) = %s;', get(hObject, 'String'));

Error in ==> gui_mainfcn at 96
feval(varargin{:});

Error in ==> Motorauswertung at 43
gui_mainfcn(gui_State, varargin{:});

??? Error while evaluating uicontrol Callback

Gruß Sebbl
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 10.08.2009, 18:41     Titel:
  Antworten mit Zitat      
Was gibt Matlab denn zurück, wenn du nur
Code:
get(hObject, 'String');
eingibst?
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.08.2009, 11:13     Titel:
  Antworten mit Zitat      
dann gibt matlab garnichts zurück

Gruß sebbl
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 11.08.2009, 11:58     Titel:
  Antworten mit Zitat      
Shocked Das ist komisch. Kannst du ein Beispiel erstellen, welches ein editfeld enthält und nach Eingabe eines Wertes auch nichts zurückgibt? Vllt. finden wir dann den Fehler...
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.08.2009, 12:06     Titel:
  Antworten mit Zitat      
okay ich versuchs mal mit nem einfachen Beispiel....
vielleicht steh ich ja nur aufm Schlauch Shocked

Gruß Sebbl

edit_callback.m
 Beschreibung:

Download
 Dateiname:  edit_callback.m
 Dateigröße:  2.62 KB
 Heruntergeladen:  446 mal
edit_callback.fig
 Beschreibung:

Download
 Dateiname:  edit_callback.fig
 Dateigröße:  1.23 KB
 Heruntergeladen:  459 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 11.08.2009, 12:20     Titel:
  Antworten mit Zitat      
Ich habs... Ich hab nicht dran gedacht, dass die Rückgabe ein Cell-Array ist Embarassed
Eine mögliche Lsg.:
Code:
evalin('base',['param(2)=' cell2mat(get(hObject,'String')) ';']);


Aufpassen das nicht versehentlich ein "," statt einem "." eingegeben wird, oder eine Kontrollabfrage einbauen.

Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
Sebbl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 131
Anmeldedatum: 09.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.08.2009, 13:09     Titel:
  Antworten mit Zitat      
VIELEN DANK für deine Hilfe !!!

Genau das wars Very Happy

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 - 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.