10

我有一个带有大约 15 个组合框和 15 个文本框的 vb.net windows 窗体,以及其他几个控件。所有这些TextBoxesComboBoxes位于面板中。这样做的原因是我需要根据用户选择/输入的内容来调整控件的可见属性,因此将每个标签和控件组合在它们自己的面板中似乎是一种简单的方法来实现这一点。

我已经通过属性设置了标签顺序,但它不起作用。当我浏览我的表单时,它会跳过并且不遵循我设置的标签顺序。这是因为我的控件都位于单独的面板中吗?TabStop对于我不想要制表符的所有内容,我都设置为 false,我对这里发生的事情有点困惑。看起来我ComboBoxesTextBoxes每个人都在自己的面板中这一事实正在阻止我的标签索引工作。任何人都可以确认这一点或对可能发生的事情有其他想法吗?TabIndex如果我创建一个新表单就可以了。

4

4 回答 4

14

信不信由你,面板排序绝对会影响 TabIndex。我发现在多面板表单上处理选项卡排序的最简单方法是按照 LarsTech 的建议使用 View>Tab Order。然后,一旦选项卡顺序可见,您将能够看到面板如何影响每个面板中包含的控件的整体顺序。接下来,在实际面板上一次左键单击一个,按照您希望流程进行的顺序。您会注意到它会自动对每个面板内的控件进行子排序,整个面板的排序按照您指定的顺序排列。完成此操作后,您可以单击每个面板内的每个控件,以在给定面板内设置控件的相对 Tab 键顺序。

于 2013-09-25T19:37:35.537 回答
5

尝试在 Visual Studio 设计器中使用“查看 - 选项卡顺序”,然后按所需顺序单击每个容器和控件。父容器(面板)的标签索引很重要。

于 2013-04-17T15:35:22.433 回答
3

将 TabStop 设置为 FALSE 意味着它将在轮到 Tab 顺序时跳过。通常,您会将标签的 TabStop 设置为 FALSE,并将所有其他 INTERACTIVE 控件设置为 TABSTOP = True(除非该控件被禁用了)。

不要从标签跳到标签。您的 TabStop 和 Tab Order 应该类似于下面的列表。

Name         Parent        TabOrder        TabStop
=======================================================
Form         -             0               -
TabStrip1    Form          1               True
Tab1         TabStrip1     2               True
Label1       Tab1          3               False
Textbox1     Tab1          4               True
Label2       Tab1          5               False
Combo1       Tab1          6               True

Tab2         TabStrip1     7               True
Label3       Tab2          8               False
Textbox2     Tab2          9               True
Label4       Tab2          10              False
Combo2       Tab2          11              True

Tab3         TabStrip1     12               True
Label5       Tab3          13               False
Textbox3     Tab3          14               True
Label6       Tab3          15               False
Combo3       Tab3          16               True
于 2013-04-17T16:17:37.523 回答
2

我发现您必须查看每个控件和控件分组(组框、面板等)的每个选项卡索引。与 Classic VB 不同,.Net 不会为您更新所有其他选项卡索引。您可以在表单、面板或其他分组类型上使用相同的选项卡索引拥有任意数量的控件。

顺便说一句,对于那些发布 View - Tab Order 菜单项的人,谢谢。我不知道它在那里,它极大地帮助我正确地订购了带有多个嵌套组框的表单。这是查看标签顺序的绝佳工具。如果你使用这个,一定要注意每一层的嵌套。

于 2015-03-07T18:08:08.180 回答