如何在输入对话框中预设光标或选择默认答案

时间:2013-10-16 09:26:42

标签: matlab matlab-guide

如果创建一个带有inputdlg的输入对话框和默认答案,它看起来像是:

enter image description here

我需要使用哪个回调命令才能看起来像这样?

enter image description here

这里缺少很多文档。这是客户的一种“奢侈服务”;) 但我觉得如果它很容易实现会很好。


这个问题实际上已经解决了,因为我发现对于我的特定情况,有uigetfileuiputfile等方便的功能。但是我的问题的一般情况仍然没有解决,或者至少我还没有测试过java方法。

1 个答案:

答案 0 :(得分:3)

我害怕使用内置inputdlg而不进行更改,这是不可能的。 至少没有'隐藏'功能允许这个。

为此,您需要访问底层的Java TextField对象。 您可以将inputdlg复制到某个新位置并制作自己的版本。

结合findjobj实用程序,原则上存在所需的功能。 http://www.mathworks.com/matlabcentral/fileexchange/14317-findjobj-find-java-handles-of-matlab-graphic-objects 事情可能就像这样:

% create the edit-field:
h = uicontrol('style', 'edit',...);
% get the underlying java object
% this should be a javahandle to a JTextField
jtextfield = findjobj(h);
% set start/end of the selection as desired:
jtextfield.setSelectionStart(startPos);
jtextfield.setSelectionEnd(endPos);