How can I avoid displaying "0" in my text box when cancel is pressed using UIGETDIR

4 次查看(过去 30 天)
Hi,
The dialog box UIGETDIR returns either the selected folder name as a string if OK is pressed or the number 0 if Cancel is pressed. In my application I have an edit box with a callback function that calls UIGETDIR and then displays the selected folder string, something like this:
editboxhandle.callbackfcn = @set(editboxhandle,'String',uigetdir);
However, when Cancel is pressed, "0" is displayed in my edit box but while I would like the string to be empty in such case. I'm am restricted to a singel expression callback like the one above. How can I solve this?

回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2014-8-3
k=uigetdir;
if k==0;
k=[];
end
  3 个评论
Azzi Abdelmalek
Azzi Abdelmalek 2014-8-3
编辑:Azzi Abdelmalek 2014-8-3
Why do you need to do it in a single line?
k=uigetdir;
if k==0;
k=[];
end
editboxhandle.callbackfcn = @char(set(editboxhandle,'String',k))

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Dialog Boxes 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by