show/hide 组合框是否为空的文本框
show/hide textbox if comboxbox is null or not
首先我要感谢所有回答我之前问题的人,
我有一个组合框(列表)和一个文本框(key1),但如果组合框不为空,我想启用文本框,我试图通过此代码
Private Sub TextBox1_Change()
If IsNullOrEmpty(ComboBox1.Text) Then
TextBox1.Visible = False
TextBox1.Enabled = False
Else
TextBox1.Visible = True
TextBox1.Enabled = True
End If
End Sub
但结果总是 textbox1 被禁用,即使我从列表或组合框<>null
中选择
这比你做的要简单。
相反,测试 ComboBox1 的文本 属性 的长度是否大于 0。这将为您提供布尔值 True/False。然后,您可以使用该布尔结果在一行中设置任何其他布尔值 属性(如 Enabled
或 Visible
属性)。
此外,您需要将其放在ComboBox1
的Change
事件中,而不是TextBox1
。
Private Sub ComboBox1_Change()
TextBox1.Enabled = (Len(ComboBox1.Text)>0)
End Sub
或
Private Sub ComboBox1_Change()
TextBox1.Visible = (Len(ComboBox1.Text)>0)
End Sub
首先我要感谢所有回答我之前问题的人, 我有一个组合框(列表)和一个文本框(key1),但如果组合框不为空,我想启用文本框,我试图通过此代码
Private Sub TextBox1_Change()
If IsNullOrEmpty(ComboBox1.Text) Then
TextBox1.Visible = False
TextBox1.Enabled = False
Else
TextBox1.Visible = True
TextBox1.Enabled = True
End If
End Sub
但结果总是 textbox1 被禁用,即使我从列表或组合框<>null
中选择这比你做的要简单。
相反,测试 ComboBox1 的文本 属性 的长度是否大于 0。这将为您提供布尔值 True/False。然后,您可以使用该布尔结果在一行中设置任何其他布尔值 属性(如 Enabled
或 Visible
属性)。
此外,您需要将其放在ComboBox1
的Change
事件中,而不是TextBox1
。
Private Sub ComboBox1_Change()
TextBox1.Enabled = (Len(ComboBox1.Text)>0)
End Sub
或
Private Sub ComboBox1_Change()
TextBox1.Visible = (Len(ComboBox1.Text)>0)
End Sub