|
Условие на значение
|
|||
---|---|---|---|
#18+
Здравствуйте профессионалы и просто неравнодушные люди! Помогите пожалуйста решить задачку Начальные условия Имеется форма ленточного типа с текстбоксами, один из которых нужно закрыть условием на значение, проще говоря, чтобы пользователь не ленился и не пропускал данный текстбокс (запись в таблице). Вариант назначить данному полю атрибут обязательного напрямую в таблице пока не рассматривается, работаем из формы. Назначаем условие на значение, все вроде хорошо, но! Нюанс - условие на значение не срабатывает, пока пользователь не вобьет любое значение! То есть, получение фокуса данным текстбоксом даже имеющим значение Null не запускает проверку на значение и пустое поле можно просто "протабить". Более того, хотел применить хитрость, на событие получения фокуса повесил проверку и, в случае Null, вписываю некое невероятное значение, ставлю проверку на него, но оказывается, что вброс значения в поле также не запускает проверку на значение. Выходит, что проверка не значение работает только тогда, когда пользователь меняет значение с клавиатуры! Главное, что все события работают нормально, то есть "получение фокуса" например видит, что в поле Null, но при этом я не могу даже как-то зациклить этот фокус, например не дать ему уйти с этого поля, вообще никакое событие не может предотвратить уход с поля. Коллеги, если знаете, подскажите, как или спровоцировать проверку или зациклить фокус на поле что ли. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2019, 21:17 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
Один из вариантов, например: ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2019, 21:45 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
Именно, об этом я и говорю, я же ровно так и сделал в свойствах текстбокса. Я и рассказываю, что проверка этого условия запускается только если менять значение с клавиатуры, ни вброс ни получение фокуса не провоцируют эту проверку, в том и засада. Вопрос как эту засаду обойти ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2019, 21:51 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
MSerg1968..., ни вброс ... Это что за экшн такой? MSerg1968...ни получение фокуса ... На получение фокуса и не должен. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2019, 21:58 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
MSerg1968, Проверяйте поле на IsNull при событии Exit (Выход). Там и Cancel есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2019, 22:18 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
Да, некоторые нестыковочки присутствуют. Можно пытаться отрабатывать проверку при получении фокуса другими контролами. На примере текстбоксов возвращаем фокус в текстбокс "PatternName": ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2019, 22:30 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
__MichelleПроверяйте поле на IsNull при событии Exit (Выход). Там и Cancel есть. 21941072 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2019, 22:35 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
Шаман, Мне бы такую память...))) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2019, 22:55 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
__Michelle, Шаман Друзья, спасибо огромное, вы молодцы. Именно так - Private Sub Поле_Exit(Cancel As Integer) If IsNull(Поле) Or Поле = "" Then MsgBox "Необходимо заполнить Поле" Cancel = True End If End Sub ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 00:14 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
Predeclared, Вброс это мой вульгаризм, означающий присвоение значения полю не с клавиатуры, а командой VBA ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 00:16 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
MSerg1968__Michelle, Шаман Друзья, спасибо огромное, вы молодцы. Именно так - Private Sub Поле_Exit(Cancel As Integer) If IsNull(Поле) Or Поле = "" Then MsgBox "Необходимо заполнить Поле" Cancel = True End If End Sub Вообще-то, если Вы не заметили, Шаман дал ссылку на мой пост месячной давности с ответом. О котором я сама успела благополучно забыть. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 01:13 |
|
Условие на значение
|
|||
---|---|---|---|
#18+
MSerg1968....Вариант назначить данному полю атрибут обязательного напрямую в таблице пока не рассматривается, работаем из формы....А почему бы не рассмотреть? После того как юзер пару раз (а может и за один раз научится-достаточно на форме отметить это поле(я),например звездочкой, и сделать сноску "поля отмеченные * обязательны к заполнению") не сможет уйти с записи он станет заполнять это поле-зачем изобретать велосипед? Или сделать как советует Predeclared-просто и со вкусом ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 02:48 |
|
|
start [/forum/topic.php?fid=45&msg=39865320&tid=1610463]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 125ms |
0 / 0 |