2013-02-14 69 views
-3

我有6個TextBox和6個CheckBox。現在我想用CheckBox1禁用TextBox1並使用同一個CheckBox重新激活它。 如何做到這一點?使用Visual Basic中的複選框啓用和禁用TextBox

EDIT1 15.55 14/02/2013

我這樣做,以解決我的問題!

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
If CheckBox1.Checked = True Then
TextBox1.Enabled = False
ElseIf CheckBox1.Checked = False Then
TextBox1.Enabled = True End If End Sub
`

+0

[你嘗試過什麼?](http://mattgemmell.com/2008/12/08/what-have-you-tried/) – AbZy 2013-02-14 14:09:46

+1

我不知道該怎麼辦!我發現這個http://www.mrexcel.com/forum/excel-questions/17383-activating-deactivating-textbox-checkbox-solved.html,但我不工作! – Simbox97 2013-02-14 14:13:34

+0

我們很樂意幫助初學者,但爲了學習編程,您需要爲初學者準備一本好書,並從那裏開始。本網站的問答形式不是學習基礎知識的理想方式。 – 2013-02-14 14:17:47

回答

4

這將工作,只需添加更多的其他複選框

Private Sub CheckBox1_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles CheckBox1.CheckedChanged 
     If CheckBox1.Checked = True Then 
      TextBox1.Enabled = True 
     Else 
      TextBox1.Enabled = False 
     End If 
End Sub 

這裏做的事情:如果checkbox1是檢查,checked_changed事件火災和裏面的代碼是跑。 if語句會查看複選框是否被選中。如果選中,則它將textbox1設置爲啓用,否則將其設置爲禁用。確保在創建程序時將啓用的屬性設置爲啓用或禁用。如果您希望從一開始就啓用它,那麼這是默認的....否則將其設置爲在其屬性視圖中禁用。

1
Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox1.CheckedChanged 
    TextBox1.Enabled = CheckBox1.Checked 
End Sub 
0

如果你有一個內置的圖層,你可以發送對象(因此隱藏的東西),這是有效的。我使用這種方式來使文本框和其他項目出現並消失,這取決於其他選擇。

Private Sub checkbox_Click() 
    If (checkbox = True) Then 

    ActiveSheet.Shapes("textbox").ZOrder msoSendToFront 
    ActiveSheet.Shapes("textbox").ZOrder msoSendToFront 

    Else 

    ActiveSheet.Shapes("textbox").ZOrder msoSendToBack 
    ActiveSheet.Shapes("textbox").ZOrder msoSendToBack 

    End If 

End Sub 
0

這爲我工作:

Public Class Form1 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 


     TextBox1.Enabled = False 

     If Not TextBox1.Enabled Then 
      TextBox1.BackColor = Color.White 
     End If 
    End Sub 
    Private Sub CheckBox1_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles CheckBox1.CheckedChanged 
     If CheckBox1.Checked = True Then 
      TextBox1.Enabled = True 
     Else 
      TextBox1.Enabled = False 
     End If 
    End Sub 
End Class 
+0

沒問題,但只有代碼的答案通常是不被接受的。 – 2017-09-02 21:19:04

+0

好的,然後讓 - 弗朗索瓦......我看着一個網站,並嘗試該代碼。但是發現它只用了一種與我想要的相反的方式。所以我做了更多的研究並找到了第一部分(第一部分)。它沒有單獨工作,所以我結合起來。我還沒有太多的編碼器。剛開始需要。謝謝。更好? – 2017-09-03 00:22:59