PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Matlab Textfeld Wert?


Grivel
2011-03-29, 16:05:00
Hallo Leute,


ich habe in Matlab ein Textfeld in welchem ich eine Zahl eintrage, jetzt habe ich schon gegogelt und Skripts angeschaut aber nirgends gefunden, was ich suche.

Kann es sein, dass das Textfeld (logischerweise) als "Text" interpretiert wird. Sprich wenn ich eine "12" eintrage, sie als Text und nicht als Zahl angesehen wird und daher nicht weiter benutzt werden kann?
Ich könnte das ganze zwar direkt im Code schreiben, möchte jedoch eine einfacher nutzbare oberfläche erstellen um bei späteren Messungen einfach Werte einzutippen, nachdem ich den Pfad der Messunsdatei bestimmt habe.
Wenn ich eine Zahl anstatt des handles
von der Textbox für den Anfangswert der Auslesung eingebe funktioniert die ganze Sache einwandfrei.


Also konkret:

startOffset = set(handles.edit1, 'string' );
endOffset = 20;

geht nicht...

startOffset = 12;
endOffset = 20;

geht...

Gibts da einen Tipp?

Danke

S8472
2011-03-29, 17:20:55
Ich kann mir gut vorstellen, dass die Eingabe im Textfeld als String interpretiert wird. Versuche es doch mal mit einer Umwandlung: str2num (http://www.mathworks.com/help/techdoc/ref/str2num.html)

Gast 1947
2011-03-29, 18:46:12
Wert reinschreiben:
set(handles.edit1, 'string', num2str(12) );
Wert abholen:
get(handles.edit1, 'string', str2double(12));

Gast 1947
2011-03-29, 18:47:42
Wert reinschreiben:
set(handles.edit1, 'string', num2str(12) );
Wert abholen:
get(handles.edit1, 'string', str2double(12));
abholen ist so natürlich falsch...
str2double(get(handles.edit1, 'string'));