Определение маски ввода


Если свойство Формат (Format) управляет тем, как данные отображаются в поле таблицы, то свойство Маска ввода (Input Mask) позволяет контролировать ввод данных в таблицу. И не только контролировать, но и упрощать процесс ввода. Маску используют в том случае, когда вводимые данные должны содержать определенные символы в некоторых позициях вводимой строки. Самым простым и ярким примером таких данных являются номера телефонов. Маска ввода должна обеспечить возможность вводить только цифры номера, а остальные символы (скобки вокруг кода города, дефис между цифрами номера) будут добавляться автоматически. Маска задается с помощью символов, приведенных в .
Таблица 2.12. Символы для создания масок ввода

Символ маски

Описание

0

В данную позицию должна быть введена цифра. Знаки плюс (+) и минус (-) не допускаются

9

В данную позицию должна быть введена цифра или пробел. Знаки плюс (+) и минус (-) не допускаются

 

Символ маски

Описание

#

В данную позицию должна быть введена цифра, пробел, знаки плюс (+) или минус (-)

; L

В данную позицию должна быть введена буква

?

В данную позицию может быть введена буква или пробел

А

В данную позицию должна быть введена буква или цифра

а

В данную позицию должна быть введена буква, цифра или пробел

&

В данную позицию должен быть введен произвольный символ или пробел

С

В данную позицию может быть введен произвольный символ или пробел. Если пользователь ничего не введет, Access не занесет в эту позицию никаких данных

.

Десятичный разделитель (зависит от региональных установок в окне Язык и стандарты Панели управления Windows)

,

Разделитель групп разрядов (зависит от региональных установок в окне Язык и стандарты Панели управления Windows)

: — /

Разделители в значениях даты и времени (зависят от региональных установок в окне Язык и стандарты Панели управления Windows)

<

Преобразует все символы справа к нижнему регистру

>

Преобразует все символы справа к верхнему регистру

!

Указывает, что маску нужно заполнять справа налево. Этот символ следует использовать в том случае, когда символы в левой части маски являются необязательными. Его можно помещать в любой позиции маски

\

Указывает, что следующий символ необходимо рассматривать в качестве постоянного символа, даже если он является специальным символом маски. Например, \А будет выводить в маске букву А

"литерал"

Вместо того чтобы многократно использовать символ обратного слэша (\), можно просто заключить любой литерал в двойные кавычки

Для того чтобы сформировать маску ввода, можно использовать Мастера масок ввода (Input Mask Wizard). Откройте в режиме Конструктора таблицу "Заказы" (Orders). Выделите поле "Дата размещения". Чтобы ввести маску ввода для этого поля, щелкните мышью по ячейке свойства Маска ввода (Input Mask). Нажмите небольшую кнопку с тремя точками, которая появится справа (эта кнопка называется кнопкой Построителя и будет встречаться еще во многих местах), и дальше следуйте указаниям мастера:

  1. В первом диалоговом окне вы можете выбрать нужную маску из списка. Если вы попытаетесь вводить данные в поле Проба (Try It), то сможете увидеть, как будут форматироваться вводимые вами символы. Нажмите кнопку Далее (Next).
  1. Во втором диалоговом окне вы увидите название маски, соответствующую ей строку символов, поле со списком Заполнитель (Placeholder character), в котором можно выбрать символ-указатель заполняемых при вводе позиций, и поле проверки работы маски. Вы имеете возможность скорректировать символьную строку маски, чтобы добиться желаемого эффекта. Нажмите кнопку Далее (Next).
  2. В последнем диалоговом окне нажмите кнопку Готово.

Сформированная символьная строка маски отображается в поле Маска ввода (Input Mask) для поля "ДатаРазмещения" (OrderDate) (рис. 2.22). Маска ввода состоит из трех частей:

  • символьной строки маски;
  • символа 0. Это означает, что введенные в поле данные будут сохраняться вместе со специальными символами. Можно заменить 0 на 1 — тогда специальные символы маски не будут запоминаться в поле;
  • символа заполнителя.