我有一個vb.net的窗體約15個組合框和15個文本框,以及其他幾個控件。所有這些文本框和組合框都位於面板中。原因是我需要根據用戶選擇/輸入的內容來調整控件的可見屬性,因此將每個標籤和控件一起分組在自己的面板中似乎是實現此目的的一種簡單方法。我已經通過屬性設置了Tab鍵順序,但它不起作用。當我通過我的表單標籤時,它會跳過並且不遵循我設置的標籤順序。這是因爲我的控件每個都位於單獨的面板中?我把TabStop設置爲false,因爲我不想要一個tabstop,我對這裏發生的事情有點困惑,看起來我的組合框和文本框每個都在它們自己的面板裏面,這會阻止我選項卡索引工作。任何人都可以證實這一點或有其他想法可能發生?如果我創建一個新窗體,Tab Tab工作。Tab索引不適用於面板中的控件?
回答
不管你信不信,面板排序絕對會影響TabIndex。我發現處理多面板表單上標籤排序的最簡單方法是使用LarsTech建議的視圖>標籤順序。然後,一旦標籤排序可見,您將能夠看到面板如何影響每個面板中包含的控件的整體排序。接下來,按實際面板上的順序左鍵單擊一個,按照您想要的流程順序進行。您會注意到,它會自動對每個面板內的控件進行次級排序,並且整個面板排序按照您指定的順序排列。完成此操作後,可以單擊每個面板內的每個控件,以在給定面板內設置控件的相關Tab選項。
嘗試在Visual Studio設計器中使用「視圖 - 選項卡順序」,然後按所需順序單擊每個容器和控件。父容器(面板)的選項卡索引很重要。
謝謝,我也嘗試過,仍然沒有骰子 – TypeM1smatch
@EricJ嘗試在一個新的小項目中重現問題。如果您可以重新創建它,請將其編輯到您的帖子中。 – LarsTech
正確的答案。 「父容器(面板)的選項卡索引很重要」 – fedeteka
將TabStop設置爲FALSE意味着當它以Tab鍵順序出現時,它將跳過。 通常,您可以將TabStop設置爲FALSE,將所有其他INTERACTIVE控件設置爲TABSTOP = True(除非該控件在關閉時關閉)。
不要跳過Tab到Tab。您的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
感謝您的Zaf。我想你在這裏做些什麼。我今晚會告訴你,看看我能不能找出我脫軌的地方 – TypeM1smatch
我發現你必須查看每個控件和控件分組的每個標籤索引(組合框,面板,任何)。與Classic VB不同,.Net不會爲您更新所有其他選項卡索引。您可以使用窗體,面板或其他分組類型上相同的選項卡索引來創建任意數量的控件。
順便說一句,對於那些發佈視圖 - Tab鍵菜單項,謝謝。我不知道它在那裏,它幫助我非常正確地訂購一個我有多個嵌套組框的表單。這是審查標籤順序的極好工具。如果你使用這個,一定要注意每一層的嵌套。
「順便說一句,對於發佈視圖 - Tab鍵菜單項的用戶,謝謝。我不知道它在那裏,它幫助我非常正確地訂購一個我有多個嵌套組框的表單。這是審查標籤順序的極好工具。如果你使用這個,一定要注意每一層的嵌套。「這裏也一樣!真的很棒的工具 – fedeteka
- 1. Tab索引不適用於圖像,面板和閃存組中的標籤
- 2. 在asp.net中,Tab索引不適用於動態添加的控件
- 3. 組合框控件中的Tab索引
- 4. Z索引不適用於放置在公開面板中的下拉組件。
- 5. Tab索引不適用於某些元素
- 6. 由於索引不正確,拖放面板控件重疊
- 7. TextBox.SelectAll()不適用於TAB
- 8. 如何將控件集中在通過Tab鍵索引添加到其父窗體的面板上的控件
- 9. Tab索引不工作richfaces彈出面板
- 10. 如何讓tab索引適用於下拉菜單?
- 11. 雙面緩衝不適用於面板?
- 12. 僅適用於索引頁面?
- 13. jQuery適用於桌面,但不適用於平板電腦
- 14. 按鈕不適用於更新面板
- 15. 序列中的Tab索引
- 16. RadioButtonList中ListItems的Tab索引
- 17. Tab鍵索引
- 18. 乳膠\索引不適用於\ textbf
- 19. Jquery索引不適用於子節點
- 20. 值'1'不適用於'索引'
- 21. Google索引:_escaped_fragment_不適用於主頁
- 22. onActivityResult不適用於Camera -Tab ActivityGrup
- 23. Titanium:Android Ti.UI.currentWindow不適用於Tab組
- 24. mouse_right click事件不適用於使用c#的winform面板?
- 25. 頁面索引控件
- 26. 分頁不適用於自定義頁面索引
- 27. mvcpaging ajax模式引用Tab控件
- 28. 面板上的鼠標移動事件不適用於我
- 29. Angular.js - 控制器沒有執行索引,適用於其餘模板
- 30. 控制器中的索引方法不適用於活動模型串行器
設置TabStop和TabIndex屬性通常都是需要的。如果它不起作用,請檢查表單中可能存在干擾控件聚焦的代碼的任何事件。 – LarsTech
感謝您的建議,但是我的代碼中沒有任何內容會影響控件的焦點 – TypeM1smatch
使用我作爲模板繪製的表格.....用您的TABSTOPS和TABORDER填充它並嘗試列出所有控件表格。 – Zeddy