Если свойство Формат(Format) управляет тем, как данные отображаются в поле таблицы, то свойство Маска ввода(Input Mask) позволяет контролировать ввод данных в таблицу. И не только контролировать, но и упрощать процесс ввода. Маску используют в том случае, когда вводимые данные должны содержать определенные символы в некоторых позициях вводимой строки. Самым простым и ярким примером таких данных являются номера телефонов. Маска ввода должна обеспечить возможность вводить только цифры номера, а остальные символы (скобки вокруг кода города, дефис между цифрами номера) будут добавляться автоматически. Маска задается с помощью символов, приведенных в табл. 2.12.
Символ маски
Описание
В данную позицию должна быть введена цифра. Знаки плюс (+) и минус (-) не допускаются
В данную позицию должна быть введена цифра или пробел. Знаки плюс (+) и минус (-) не допускаются
#
В данную позицию должна быть введена цифра, пробел, знаки плюс (+) или минус (-)
L
В данную позицию должна быть введена буква
?
В данную позицию может быть введена буква или пробел
A
В данную позицию должна быть введена буква или цифра
a
В данную позицию должна быть введена буква, цифра или пробел
&
В данную позицию должен быть введен произвольный символ или пробел
C
В данную позицию может быть введен произвольный символ или пробел. Если пользователь ничего не введет, Access не занесет в эту позицию никаких данных
. (точка)
Десятичный разделитель (зависит от региональных установок в окне Язык и стандарты Панели управления Windows)
, (запятая)
Разделитель групп разрядов (зависит от региональных установок в окне Язык и стандарты Панели управления Windows)
-, /
Разделители в значениях даты и времени (зависят от региональных установок в окне Язык и стандарты Панели управления Windows)
<
Преобразует все символы справа к нижнему регистру
>
Преобразует все символы справа к верхнему регистру
!
Указывает, что маску нужно заполнять справа налево. Этот символ следует использовать в том случае, когда символы в левой части маски являются необязательными. Его можно помещать в любой позиции маски
\
Указывает, что следующий символ необходимо рассматривать в качестве постоянного символа, даже если он является специальным символом маски. Например, \А будет выводить в маске букву А
"литерал"
Вместо того чтобы многократно использовать символ обратного слэша (\), можно просто заключить любой литерал в двойные кавычки
Таблица 2.12.Символы для создания масок ввода
Для того чтобы сформировать маску ввода, можно использовать Мастера масок ввода (Input Mask Wizard). Откройте в режиме Конструктора таблицу "Заказы" (Orders). Выделите поле "Дата размещения". Чтобы ввести маску ввода для этого поля, щелкните мышью по ячейке свойства Маска ввода(Input Mask). Нажмите небольшую кнопку с тремя точками (рис. 2.21), которая появится справа (эта кнопка называется кнопкой Построителя и будет встречаться еще во многих местах), и дальше следуйте указаниям мастера:
1. В первом диалоговом окне вы можете выбрать нужную маску из списка (рис. 2.22). Если вы попытаетесь вводить данные в поле Проба(Try It), то сможете увидеть, как будут форматироваться вводимые вами символы. Нажмите кнопку Далее(Next).
Рис. 2.21.Таблица "Заказы" в режиме Конструктора
2. Во втором диалоговом окне вы увидите название маски, соответствующую ей строку символов, поле со списком Заполнитель(Placeholder character), в котором можно выбрать символ-указатель заполняемых при вводе позиций, и поле проверки работы маски. Вы имеете возможность скорректировать символьную строку маски, чтобы добиться желаемого эффекта. Нажмите кнопку Далее(Next).
3. В последнем диалоговом окне нажмите кнопку Готово.
Сформированная символьная строка маски отображается в поле Маска ввода(Input Mask) для поля "ДатаРазмещения" (OrderDate) (рис. 2.22). Маска ввода состоит из трех частей:
· символьной строки маски;
· символа 0. Это означает, что введенные в поле данные будут сохраняться вместе со специальными символами. Можно заменить 0 на 1 — тогда специальные символы маски не будут запоминаться в поле;