Разрешить состояние NULL для флажка и кнопки переключения
В следующем примере свойство TripleState используется для разрешения null в качестве юридического значения CheckBox и ToggleButton. Пользователь управляет значением свойства TripleState с помощью элемента ToggleButton2. Пользователь может задавать значения элементов CheckBox или ToggleButton в зависимости от значения свойства TripleState. Однако если для элемента управления задано значение Null, событие не запускается.
Чтобы использовать этот пример, скопируйте пример кода в редактор скриптов формы. Чтобы запустить код, необходимо открыть форму, чтобы активировать событие Open . Убедитесь, что эта форма содержит:
Элемент CheckBox с именем CheckBox1.
Элемент ToggleButton с именем ToggleButton1.
Элемент ToggleButton с именем ToggleButton2.
Элемент ToggleButton с именем ToggleButton1.
Элемент ToggleButton с именем ToggleButton2.
Sub Item_Open()
Set CheckBox1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("CheckBox1")
Set ToggleButton1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("ToggleButton1")
Set ToggleButton2 = Item.GetInspector.ModifiedFormPages("P.2").Controls("ToggleButton2")
CheckBox1.Caption = "Value is True"
CheckBox1.Value = True
CheckBox1.TripleState = False
ToggleButton1.Caption = "Value is True"
ToggleButton1.Value = True
ToggleButton1.TripleState = False
ToggleButton2.Value = False
ToggleButton2.Caption = "Triple State Off"
End Sub
Sub ToggleButton2_Click()
Set CheckBox1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("CheckBox1")
Set ToggleButton1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("ToggleButton1")
Set ToggleButton2 = Item.GetInspector.ModifiedFormPages("P.2").Controls("ToggleButton2")
If ToggleButton2.Value = True Then
ToggleButton2.Caption = "Triple State On"
CheckBox1.TripleState = True
ToggleButton1.TripleState = True
Else
ToggleButton2.Caption = "Triple State Off"
CheckBox1.TripleState = False
ToggleButton1.TripleState = False
End If
End Sub
Sub CheckBox1_Click()
Set CheckBox1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("CheckBox1")
If IsNull(CheckBox1.Value) Then
CheckBox1.Caption = "Value is Null"
ElseIf CheckBox1.Value = False Then
CheckBox1.Caption = "Value is False"
ElseIf CheckBox1.Value = True Then
CheckBox1.Caption = "Value is True"
End If
End Sub
Sub ToggleButton1_Click()
Set ToggleButton1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("ToggleButton1")
If IsNull(ToggleButton1.Value) Then
ToggleButton1.Caption = "Value is Null"
ElseIf ToggleButton1.Value = False Then
ToggleButton1.Caption = "Value is False"
ElseIf ToggleButton1.Value = True Then
ToggleButton1.Caption = "Value is True"
End If
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.