MATLAB GUI选项卡排序

时间:2014-03-25 00:07:52

标签: matlab user-interface matlab-guide

在我目前的项目中,我的gui中有一堆编辑文本框。当第一个文本中的I / m空白并按Tab键时,它会跳到第三个文本框,当我再次按Tab键时,它会转到第二个框。每当我点击标签时,它就会以这种奇怪的顺序跳转。我发现顺序取决于每个文本框的回调函数的顺序。无需复制粘贴和更改由指南生成的代码,有更好的方法来订购我的文本框。 因此,例如当我在框中的红色x和点击标签时,它将我带到红色框z,而不是红色y而不是绿色x然后是绿色z。我想能够点击红色x然后只使用标签步骤并填写其他块。是否可以重新订购?

enter image description here

1 个答案:

答案 0 :(得分:4)

GUIDE生成的GUI

使用GUIDE时,您只需使用"Tab Order Editor"即可。使用以下菜单项进行操作:

enter image description here

对于这个简单的GUI,只需一个按钮和两个文本框,您将看到以下对话框:

enter image description here

然后通过向上/向下移动UI对象来设置Tab键顺序。


程序化GUI

set the tab order programatically,您可以使用uistack重新排序句柄。

例如,要按顺序移动uicontrol“up”:

uistack(hui,'up',1)

要查看图hf中所有控件的句柄顺序:

ch = get(hf,'Children')