मुझे एक अजीब समस्या है (शायद केवल समझने के लिए) क्यों एक परीक्षण ऐप में फोकस आयत तब तक नहीं दिखाया जाता जब तक कि मैं टैब कुंजी दबाता हूं।टैब कुंजी दबाए जाने तक फ़ोकस आयताकार क्यों नहीं दिखाया जाता है?
मैं दो रेडियोबॉक्स और दो बटन के साथ एक संवाद दिखाना चाहता हूं। जब मैं संवाद प्रदर्शित करता हूं, तो मैं अपने पहले रेडियोबूटन के चारों ओर एक फोकस रेक्ट देखना चाहता हूं। (ताकि उपयोगकर्ता देख सके कि फोकस कहां है।) मैंने नियंत्रणों का आदेश दिया और tabindex प्रॉपर्टी को 0 से 4 पर सेट किया ताकि वे सही क्रम में हों। (रेडियोबॉक्स 1 में टैबिन्डेक्स 0 है, ...)
जब मैं संवाद दिखाता हूं तो पहले रेडियोबॉक्स पर ध्यान केंद्रित होता है, लेकिन इसके आसपास कोई फोकस नहीं होता है। (जब तक मैं टैब कुंजी दबाता हूं।)
मैंने एक पूरी तरह से खाली Winforms प्रोजेक्ट (विजुअल स्टूडियो 2010) बनाया, नियंत्रण जोड़ा और इसे शुरू किया। तो बिल्कुल कुछ खास नहीं है।
क्या कोई मुझे संकेत दे सकता है कि मैं क्या गलत कर रहा हूं?
Public Class Form1
Private Sub Button1_Click(sender As System.Object, _
e As System.EventArgs) _
Handles Button1.Click
Me.Close()
End Sub
Private Sub Button2_Click(sender As System.Object, _
e As System.EventArgs) _
Handles Button2.Click
Me.Close()
End Sub
Private Sub Form1_Shown(sender As Object, _
e As System.EventArgs) _
Handles Me.Shown
RadioButton1.Focus()
RadioButton1.Select()
SendKeys.SendWait("{TAB}")
SendKeys.SendWait("+{TAB}")
End Sub
End Class
अहम ... मैं, यह कहना है कि मैं विंडोज 7 (64 बिट) – AlexS
कठिन उपयोग कर रहा हूँ भूल गया ठीक करने के लिए बग, मैंने कोशिश की कुछ भी नहीं किया। –
मैंने थोड़ा (बहुत) अधिक शोध किया और पाया कि फॉर्म में "टैब" कुंजी भेजना Control.ChangeUICues ईवेंट को आमंत्रित करता है जिसमें ध्वज UICuesEventArgs.ShowFocus को सत्य पर सेट किया गया है। (http://msdn.microsoft.com/en-us/library/system.windows.forms.control.changeuicues.aspx) इस घटना के संसाधित होने के बाद, फोकस आयत दिखाई दे रहा है। क्या कोई जानता है, मैं इस घटना को सीधे कैसे ट्रिगर/कॉल कर सकता हूं? मुझे कोई ऐसी संपत्ति नहीं मिली जो मैं इसे सच में सेट कर सकता हूं ... – AlexS