MATLAB: Matlab modify inputdlg buttons

inputdlgMATLAB

I am writing a program using inputdlg function, and inputdlg came with a dialog box with an 'OK' and 'cancle' button. And I do not wish to quit when clicking the cancle button, are there's anyways I could delete this button or modify this button to become a 'retry' instead?

Best Answer

Cancel and OK are hardcoded in inputdlg
OKHandle=uicontrol(InputFig , ...
BtnInfo , ...
'Position' ,[ FigWidth-2*BtnWidth-2*DefOffset DefOffset BtnWidth BtnHeight ] , ...
'KeyPressFcn',@doControlKeyPress , ...
'String' ,'OK' , ...
'Callback' ,@doCallback , ...
'Tag' ,'OK' , ...
'UserData' ,'OK' ...
);
setdefaultbutton(InputFig, OKHandle);
CancelHandle=uicontrol(InputFig , ...
BtnInfo , ...
'Position' ,[ FigWidth-BtnWidth-DefOffset DefOffset BtnWidth BtnHeight ] , ...
'KeyPressFcn',@doControlKeyPress , ...
'String' ,xlate('Cancel', '-s') , ...
'Callback' ,@doCallback , ...
'Tag' ,'Cancel' , ...
'UserData' ,'Cancel' ...
); %#ok
Above is code from inputdlg.m.
If you change in inputdlg.m, it will affect all inputdlg usages.
Check other similar functions if they are useful.
dialog, errordlg, helpdlg, listdlg, msgbox,
questdlg, textwrap, uiwait, warndlg