I would like a variable to be assigned via a user prompt. For example, consider the following command:
row = inputdlg('Insert row number.');
When a user inputs 1 in the popup box, the value of the variable "row" is not recognized as a number or a string, but as a '1', with ticks surrounding it.
Is there a way to have a variable defined as a number or a string from a popup box?
Thank you!

 Akzeptierte Antwort

Amit
Amit am 30 Jan. 2014

0 Stimmen

row = inputdlg('Insert row number.');
row = str2num(row{:});

3 Kommentare

Mark
Mark am 30 Jan. 2014
I'm sorry, I could have been clearer. "row" refers to a row of grapevines in a vineyard for my program. It's just a variable, not a row in a matrix...
I'd like to define a number variable via a user input in a popup box. Thanks!
Amit
Amit am 30 Jan. 2014
That's correct and that's what this will do (give it a try). You can replace row with whatever variable name you like.
Moreover, row is not a matlab command that you'll override by using as a variable !
Mark
Mark am 31 Jan. 2014
Thank you! Works like a charm :)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

David Sanchez
David Sanchez am 30 Jan. 2014

1 Stimme

You can do it in a single line and use str2double which is faster than str2num:
row = str2double( inputdlg('Insert row number.') );

Kategorien

Tags

Gefragt:

am 30 Jan. 2014

Kommentiert:

am 31 Jan. 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by