Define a variable via inputdlg?

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!

 Accepted Answer

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

3 Comments

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!
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 !
Thank you! Works like a charm :)

Sign in to comment.

More Answers (1)

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

1 Comment

Excellent! Problem solved, thank you.

Sign in to comment.

Categories

Tags

Asked:

on 30 Jan 2014

Commented:

on 31 Jan 2014

Community Treasure Hunt

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

Start Hunting!