新手入門求教,如何在啟動form之初,將游標焦點鎖定在某一texbox?以texbox輸入正確才能跳轉到其他texbox的控制實作?
由于新手入門,基礎尚弱,所以或問題膚淺或很不靠譜,而論壇里大神極多,請勿見笑及不吝賜教!謝謝!
uj5u.com熱心網友回復:
用 textbox1.setfocus來設定當前焦點到textbox1form_load的時候,設定焦點
textbox1_LostFocus的時候,設定焦點。
uj5u.com熱心網友回復:
load前需要showuj5u.com熱心網友回復:
在你的 Form 設計視窗中,用滑鼠選擇這個 TextBox,然后在屬性視窗中把它的 TabIndex 屬性改為 0。這樣,在表單啟動后,它就預設獲得焦點。uj5u.com熱心網友回復:
Private sub Form_Load()
Me.Show
Text1.SetFocus
End Sub
Private sub Text1_LostFocus()
If Text1.Text <> "測驗正確" Then Text1.SetFocu
End Sub
uj5u.com熱心網友回復:
Private Sub Form_Load()Me.Show
Text1.SetFocus
End Sub
在設計界面,將 Text1 的屬性 TabIndex 設定為 0,將 Text2 的屬性 TabIndex 設定為 1,將 Text3 的屬性 TabIndex 設定為 2........在填寫了 Text1 等 的內容后按【Tab】鍵就可以依次移動焦點。
uj5u.com熱心網友回復:
像大家所說的,老版本設焦點的方式是textbox.setfocus,在2008版本中直接就是textbox.fous了,會不會不習慣?
uj5u.com熱心網友回復:
這點微不足道的改變,有啥不習慣的。
uj5u.com熱心網友回復:
說明某人是處女座。
uj5u.com熱心網友回復:
問問題的時候注明一下是vb6還是.NET會更好一點,VB版塊主要討論VB6的相關主題,.NET有專門的版塊,討論.NET的問題針對性更強一點。
到了.NET,vb會更多地與這個平臺保持統一,從而適當地拋掉一些歷史包袱,因而從vb6轉到.NET會有細微的不同,又由于幾乎原樣繼承了之前的語法,所以可以很平滑地過渡,極大降低學習成本。你所說的這種變化,只要碰到一次,下次肯定就知道應該怎么寫了,再加上VS的智能提示,這點改變完全不是問題。習慣了以后,C#也可以駕輕就熟。
uj5u.com熱心網友回復:
不應該在form_load()中設定焦點,應該在form_activate()中設定焦點uj5u.com熱心網友回復:
1 在 Form_Activate 事件中使 Text1獲得焦點。2 在 Text1_Validate 事件中檢查 Text1 內容,正確才允許離開。
3 要將 Exit 這一類按鈕的 CauseValidate 屬性設定為 False,以免不能正確輸入 Text1 時無法退出。
Option Explicit
Private Sub Command1_Click()
Unload Me
End Sub
Private Sub Form_Activate()
Text1.SetFocus
End Sub
Private Sub Form_Load()
Command1.Caption = "E&xit"
Command1.CausesValidation = False
End Sub
Private Sub Text1_Validate(Cancel As Boolean)
If Text1 <> "1234" Then Cancel = True
End Sub
另一種做法是去掉 Form_Activate 事件,在 Formload 中設定 Text1 的 TabIndex = 0:
Private Sub Form_Load()
Command1.Caption = "E&xit"
Command1.CausesValidation = False
Text1.TabIndex = 0
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/50019.html
標籤:VB基礎類
上一篇:請教:如何避免隱藏的錯誤
