Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Access > Поле для ввода даты


Автор: Depeche_14 3.5.2005, 21:16
А вот такой вопрос: В форме есть поле для ввода даты. Я установил маску ввода «Краткий формат даты» - 00.00.00;;* - это в свойстве «маска ввода» этого поля. Как мне сделать так, чтобы:
1. При получении фокуса этого поля курсор сразу же устанавливался на 1-ую (крайнюю левую) позицию, т.е. непосредственно на ввод конкретно числа.
2. При получении фокуса этого поля сразу бы отображалась именно маска ввода с соответствующими заполнителями, в данном случае это *. А то при получении фокуса поле пустое, а заполнители отображаются только при начале ввода.
3. Да, и еще: можно ли заблокировать заведомо неправильный ввод даты, к примеру значения месяца 15 или число 33? При этом чтобы никакое сообщение типа «Введенное значение не подходит для данного поля» не выдавалось, а просто некорректная цифра не вводилась.
Заранее спасибо.

Автор: Akina 4.5.2005, 07:53
1) ОБработай в GotFocus
2) Там же, вернее оно само при смещении курсора
3) Нет. Ибо противоречиво.

Автор: Depeche_14 4.5.2005, 23:59
Цитата(Akina @ 4.5.2005, 07:53)
1) ОБработай в GotFocus
2) Там же, вернее оно само при смещении курсора

Мне вот тут один моментик непонятен: это насчет обработать в GetFocus. Мне необходимо писать процедуру для события "Получение фокуса" для этого поля? Если да, то что эта процедура должна выполнять? Или мне нужно просто менять свойства самого поля? Заранее извиняюсь за глупый вопрос

Автор: Akina 5.5.2005, 08:07
Цитата(Depeche_14 @ 5.5.2005, 00:59)
Мне необходимо писать процедуру для события "Получение фокуса" для этого поля?

конечно

Цитата(Depeche_14 @ 5.5.2005, 00:59)
что эта процедура должна выполнять?

то что ТЕБЕ нужно

Автор: Depeche_14 8.5.2005, 01:22
Вроде бы получилось: процедура GotFocus, в нем - Имя_Поля.SelStart=0. Т.е. при получении фокуса этим полем курсор устанавливается в крайнюю левую позицию и отображается маска ввода: **.**.** Вообщем, что хотел, то получил. А можно это как-нибудь по-другому сделать?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)