MATLAB Answers

Use enter button in inputdlg when file converted to exe

3 views (last 30 days)
Johan
Johan on 27 Jun 2011
Hi! Is it possible for the inputdlg box to respond to the enter button instead of clicking at the ok button? I've got help to fix it when the program is executed in matlab, I'd like to be able to use the enter button when the file is converted to exe file. BR Johan

  2 Comments

Titus Edelhofer
Titus Edelhofer on 27 Jun 2011
I guess you tried to compile it? Usually the compiled version should behave like the "uncompiled" version ...
Titus
Johan
Johan on 28 Jun 2011
I thought so too, unfortunately I was wrong:/

Sign in to comment.

Answers (1)

Jan
Jan on 27 Jun 2011
Create a copy of "inputdlg.m" e.g. as "inputdlg2.m". Search for "uicontrol(EditHandle(1))". Add this line after the following END:
uicontrol(OKHandle);
Now the OK button is selected initially and hitting ENTER activates it. If the inputdlg2 files is created in a user folder (recommended!) insert the files MATLABROOT\toolbox\matlab\uitools\private\getnicedialoglocation.m and \private\setdefaultbutton.m also in inputdlg2.m.
Most likely a completely new created dialog file would be much smaller.

  5 Comments

Show 2 older comments
Jan
Jan on 28 Jun 2011
@Johan: I assume this depends on the initial values set by the input arguments. Please post the code you are calling INPUTDLG with.
Johan
Johan on 29 Jun 2011
timelength=inputdlg('Hur länge vill du köra programmet? [min]')
timelength=str2double(timelength);
timelength=timelength*60./tid;
timelength=round(timelength);
Jan
Jan on 29 Jun 2011
Please read "help inputdlg". If you call INPUTDLG without default answers, the empty string is replied and STR2DOUBLE converts it to NaN. Without defining a default answer, Matlab has no chance to know, that a "1" is required.
Use this to define a default value:
inputdlg('question', 'dialog name', 1, {'1'})

Sign in to comment.

Tags

Products

Community Treasure Hunt

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

Start Hunting!

Translated by