2011-05-26 38 views
7

所以我从开始0和我的形式,但在运行时它是所有搞砸定义的控件的TabIndex。形式有点复杂。它具有水平和垂直分离器和面板,组框以及一些较老的VB 6.0 ActiveX控件,它们是树控件。即使我以编程方式执行并读取了预览的日志事件,并说如果它是TAB,然后control2.Focus()它仍然工作错误。太令人沮丧了。有什么想法吗? ..也有不需要选项卡的表单上的标签,所以我已经为它们的索引定义了0。这可能是对的TabIndex的可能原因不能正常工作

+0

发现这个[文档](https://msdn.microsoft.com/en-us/library/bd16a8cw(V = VS.80)的.aspx)从Microsoft&#1另一[问题](HTTP://计算器.com/questions/11052265/tabindex-does-not-work-correctly)是非常有用的。 – RajeshKdev 2015-05-28 10:16:28

回答

13

你是如何设置它的? 如果您在设计视图中的窗体中使用visual studio,请选择view - > tab顺序,然后单击所需顺序中的每个项目。

通常为我工作。

+0

谢谢。我也会尝试这种方式。我正在设置每个控件的属性。 – Bohn 2011-05-26 14:07:15

+0

哦,天啊!这很复杂。它们显示为0.1.0.0.10和0.1.0.1.11 – Bohn 2011-05-26 14:09:56

+2

不同的数字是控件的不同层次。您需要选择最高级别,然后工作。每个图层都会在左上角有一个数字,然后选择该图层,然后按要求的顺序在该图层的控件 – kerry 2011-05-26 14:49:36

8

的原因是,该控制是在不同的容器。假设你有panel1.TabIndex = 0和panel2.TabIndex = 1,则是Panel2,textBox1.TabIndex = 0,在PANEL1,textBox2.TabIndex = 1。在运行时,textBox1的,因为它的面板是第一位来自前TextBox2中!

克里说,使用查看 - >选项卡才能看到标签订单的完整体系。

+0

阿里!他们显示像这样:0.1.0.0.10和0.1.0.1.11 – Bohn 2011-05-26 14:11:00

+0

准确地说,第四个数字(从一个是开始计数?)在一个是0,另一个是1。所以这两个控件位于不同的容器中。这是造成这个问题的原因。 – Alireza 2015-01-10 14:39:05