powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Третье значение CheckBox-а
12 сообщений из 12, страница 1 из 1
Третье значение CheckBox-а
    #32846509
Фотография Lola
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть у CheckBox-a свойство TripleState. "The control will cycle through states for Yes and No values. Null values display as if they were No values."
Вот мне и надо на событии изменеия значения CheckBox-a, поймать это самое значение. Дело в том, что третье значение Null почему-то не определяется. Когда окошко сереет, то значение CheckBox в обработчике события OnClick принимает False, а не Null. Как бы мне этот Null поймать?
Спасибо.
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846546
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
LolaЕсть у CheckBox-a свойство TripleState. "The control will cycle through states for Yes and No values. Null values display as if they were No values."
Вот мне и надо на событии изменеия значения CheckBox-a, поймать это самое значение. Дело в том, что третье значение Null почему-то не определяется. Когда окошко сереет, то значение CheckBox в обработчике события OnClick принимает False, а не Null. Как бы мне этот Null поймать?
Спасибо.
а как ты догадываешся, что CheckBox значение False принимает, когда сереет?
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846550
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чекбокс надо привязать не к логическому полю, которое не может null содержать, а, например, к числовому, тогда третье значение будет именно null.
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846586
Фотография Lola
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GeoЧекбокс надо привязать не к логическому полю, которое не может null содержать, а, например, к числовому, тогда третье значение будет именно null.
Он у меня вообще ни к какому полю не привязан. Т.е. в ControlSource пусто.

?
а как ты догадываешся, что CheckBox значение False принимает, когда сереет?
Я не догадываюсь, а проверяю. В обработчике события стоит: если False - делать то-то, если True - делать то-то, если Null - делать то-то. А для визуального контроля вывожу значение через MsgBox.
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846595
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Lola
Я не догадываюсь, а проверяю. В обработчике события стоит: если False - делать то-то, если True - делать то-то, если Null - делать то-то. А для визуального контроля вывожу значение через MsgBox.

хорошо, как ты проверяешь?
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846607
Фотография Lola
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
?хорошо, как ты проверяешь?

Lola
В обработчике события стоит: если False - делать то-то, если True - делать то-то, если Null - делать то-то. А для визуального контроля вывожу значение через MsgBox.

Вот так и проверяю. По выполненной процедуре.
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846611
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
На всякий случай:

if XXX then

сработает как false, если в XXX сидит null. Корректная проверка на null делается так:

if isnull(XXX) then
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846616
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
if XXX=true then
if XXX=false then
if XXX=null then

тоже вернут false, если в XXX сидит null.
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846620
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
авторВот так и проверяю. По выполненной процедуре

:))
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846700
Фотография Lola
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир СанычНа всякий случай:

if XXX then

сработает как false, если в XXX сидит null. Корректная проверка на null делается так:

if isnull(XXX) then
Тогда возвращает True.
"IsNull returns True if expression is Null; otherwise, IsNull returns False. If expression consists of more than one variable, Null in any constituent variable causes True to be returned for the entire expression"

А хотелось бы что-то третье :)


В принципе, можно отказатьсья от CheckBox-a и использовать, например ComboBox, но...
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846708
SRC vba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub chkbox_AfterUpdate()
    Select Case (Me.chkbox)
    Case True
        MsgBox "True"
    Case False
        MsgBox "False"
    Case Else
        MsgBox "Case ELSE"
    End Select
End Sub
...
Рейтинг: 0 / 0
Третье значение CheckBox-а
    #32846734
Фотография Lola
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SRC vba
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub chkbox_AfterUpdate()
    Select Case (Me.chkbox)
    Case True
        MsgBox "True"
    Case False
        MsgBox "False"
    Case Else
        MsgBox "Case ELSE"
    End Select
End Sub

Спасибо!!! В такой конструкции Null был пойман!!!
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Третье значение CheckBox-а
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]