我有6个TextBox和6个CheckBox。现在我想用CheckBox1禁用TextBox1并使用相同的CheckBox重新激活它。 怎么做到了?
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 :(得分:5)
这将有效,只需为其他复选框添加更多
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设置为启用,否则将其设置为禁用。确保在创建程序时将enabled属性设置为启用或禁用。如果您希望从一开始就启用它,那就是默认值....否则在其属性视图中将其设置为禁用。
答案 1 :(得分:1)
Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox1.CheckedChanged
TextBox1.Enabled = CheckBox1.Checked
End Sub
答案 2 :(得分:0)
请看下面的教程。之后,查看复选框控件的事件并选择最合适的事件。您将在文本框中更改的属性为已启用。
答案 3 :(得分: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
答案 4 :(得分: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