2013-04-17 16 views
5

Çeşitli diğer denetimlerle birlikte yaklaşık 15 combobox ve 15 textbox içeren bir vb.net windows formum var. Tüm bu metin kutuları ve açılan kutular panellerde bulunur. Bunun nedeni, kullanıcının seçtiği/girdiği şey temelinde kontrollerin görünür özelliğini ayarlamak zorunda olduğumdur, bu yüzden her bir etiketin gruplandırılması ve kendi panellerinde kontrol edilmesi, bunu gerçekleştirmenin kolay bir yolu gibi görünüyordu. Sekme sırasını özellikler üzerinden ayarladım, ancak çalışmıyor. Formumdan sekme yaparken, etrafta atlar ve ayarladığım sekme sırasına uymaz. Bu benim kontrollerimin her biri ayrı panellerde bulunduğundan mı? TabStop'u bir sekme istemediğim her şey için yanlış olarak ayarladım, burada neler olup bittiği hakkında biraz kafam karışmış, gerçekten benim açılan kutular ve metin kutularının her birinin kendi panelleri içinde olması gerçeği Sekme dizinleri çalışacak. Bunu doğrulayan veya neler olabileceğine dair başka fikirleri olan var mı? Yeni bir form oluşturursam Sekme Dizini çalışır.Sekme dizini, panellerdeki denetimlerle çalışmıyor mu?

+1

TabStop ve TabIndex özelliklerini ayarlamak genellikle tek gereken şeydir. Çalışmıyorsa, formunuzdaki kontrollerin odaklanması ile çakışan kodunuz olabilecek tüm olayları kontrol edin. – LarsTech

+1

Öneriniz için teşekkürler, ancak bu noktada denetimlerin odağını etkileyen hiçbir şey yok bu noktada – TypeM1smatch

+0

Aşağıda çizdiğim tabloyu şablon olarak kullanıyorum ..... TABSTOPS ve TABORDER ile doldurun ve TÜM TÜMÜNÜ denetleyin. formu. – Zeddy

cevap

7

İster inanın ister inanmayın, mutlaka sipariş paneli Tabındex etkiler YAPAR. Çok panelli bir formda sekme siparişi vermenin en kolay yolunun, LarsTech tarafından önerilen şekilde Görünüm> Sekme Sırası'nı kullanması olduğunu buldum. Daha sonra sekme sırası görünür olduğunda, panellerin, her bir panelde yer alan kontrollerin genel siparişini nasıl etkilediğini görebilirsiniz. Ardından, akışın gitmesini istediğiniz sırayla, gerçek paneller üzerinde her seferinde bir kez sol tıklayın. Ardından, otomatik olarak, her panelin içindeki denetimleri alt sıraya göre sıralayacağını ve genel panel siparişinin belirttiğiniz sıraya göre olacağını göreceksiniz. Bu yapıldıktan sonra, belirli bir panelin içinde bir kontrolün göreceli sekme sırasını ayarlamak için her panelin içindeki her bir kontrol üzerine tıklayabilirsiniz.

3

Visual Studio tasarımcısında "Görünüm - Sekme Sırası" nı kullanmayı deneyin ve her kabı tıklayın ve istediğiniz sırayla kontrol edin. Ana konteynerin sekmesi (paneller) önemlidir.

+1

Teşekkürler, ben de denedim, hala hiçbir zar – TypeM1smatch

+1

@EricJ Sorunu yeni küçük bir projede yeniden oluşturmayı deneyin. Yeniden oluşturabilirseniz, bunu yayınınıza düzenleyin. – LarsTech

+0

Doğru cevap. "Ana kapsayıcının sekme dizini (paneller) önemlidir" – fedeteka

2

TabStop'un FALSE olarak ayarlanması, sıranın Sekme Sırasına geldiğinde atlanacağı anlamına gelir. Normal olarak, Tabstop'u LABEL'lerden FALSE'a ve tüm diğer INTERACTIVE Control'leri TABSTOP = True'e ayarlarsınız (kontrol devre dışı bırakılmadıkça).

Tab'dan Tab'a atlamayın. TabStop ve Sekme Sıranız, aşağıdaki liste gibi bir şey olmalıdır.

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 
+1

Bu Zaf için teşekkürler. Sanırım burada bir şeylerin var. Bu gece bir ziyarette bulunacağım ve View - Sekme Sırası menü maddesini yayınlayanlar için – TypeM1smatch

1

Her bir denetim ve kontrol gruplandırması için EVERY sekme dizinine bakmanız gerektiğini buldum (grup kutusu, panel, her neyse). Klasik VB'den farklı olarak, .Net sizin için tüm diğer sekme dizinlerini güncellemez. Bir form, panel veya diğer gruplama türlerinde aynı sekme dizini ile istediğiniz kadar denetime sahip olabilirsiniz. Görünüm - Sekme Sırası menü öğesini yükleyenler için

BTW, teşekkür ederiz. Ben orada olduğunu bilmiyordum ve çok iç içe grup kutuları ile sahip olduğum bir formu düzgün sipariş için bana çok yardımcı oldu. Bu sekme sırasını incelemek için mükemmel bir araçtır. Bunu kullanırsanız, her bir yuvalama düzeyine dikkat edin.

+0

"BTW" nin nereden çıktığını anlayabiliyor muyum, teşekkür ederim.Ben orada olduğunu bilmiyordum ve çok iç içe grup kutuları ile sahip olduğum bir formu düzgün sipariş için bana çok yardımcı oldu. Bu sekme sırasını incelemek için mükemmel bir araçtır. Bunu kullanırsanız, her bir yuvalama düzeyine dikkat edin. "Aynı burada! Gerçekten güzel bir araç – fedeteka