Ввод значений по шаблону |
Использование шаблонов позволяет динамически менять формат отображения и ввода данных.
Имеется глобальная переменная formatDefaultChar : char, которая содержит символ-заполнитель полей, обязательных для ввода пользователем (кодировка OEM). Если значение этой переменной установлено в #0, то обязательные элементы поля ввода будут заполнены символом нижней границы множества допустимых символов. По умолчанию, значением этой переменной является символ #254 (небольшой квадрат). Следует не допускать ситуации присвоения данной переменной символа, которые может присутствовать в шаблоне или который пользователь может ввести в соответствующую шаблону строку ввода, так как в такой ситуации адекватная работа шаблона ввода не гарантируется.
Символьным представлением строки ввода, шаблон которой содержит обязательные для ввода символы, в том случае, когда ввод в это поле не выполнялся, будет пустая строка (за исключением того случая, когда символ-заполнитель задан нулевым символом). Если пользователь начинает вводить значение в такую строку ввода, то он не сможет выйти из этого поля до тех пор, пока не введет все обязательные символы, либо откатит изменения до строки первоначального вида (обычно это комбинация клавиш Alt+BackSpace).
При необходимости, символ-заполнитель обязательных позиций шаблона ввода может быть задан в самой строке описания шаблона. Для этого следует использовать директиву форматирования %@F=<символ>, где <символ> задает значение символа-заполнителя.
Для работы с форматами ввода полей из языка VIP можно использовать следующие функции:
DefineFormat (const iName, iBody : string) : boolean; InlineFormat (const iName : string) : boolean; GetFormatError : string; DebugDump (const iName, iFile : string; append : Boolean ) : longint; SetFormatIterationCount (iterations : longint; maxCount : longint ) : longint; SetFormatLogFileName (const iLogName : string) : boolean;
Дополнительная информация о шаблонах с примерами их использования