TRangeValidator (модуль Validate)


TObject
 
Init
Done
Free
TValidator
Options
Status
Init
Load
IsInvalid
IsValidInput
Store
Transfer
Valid
TFileterValidator
ValidChars
Init
Load
IsInvalid
IsValidInput
Store
TRangeValidator
Max
Min
Init
Load
Error
IsValid
Store
Transfer

    Объект проверки допустимости по диапазону определяет, попадают ли набираемые пользователем данные в указанный диапазон целых чисел.

Поля


Max

     Max: Longint;

    Max - это наибольшее допустимое длинное целое значение для строки ввода.

Min

     Min: Longint;

    Min - это наименьшее допустимое длинное целое значение для строки ввода.

Методы


    Ниже описываются методы, определенные в данном объекте.

Init


     constructor Init(AMin, AMax: Longint);

    Строит объект проверки допустимости диапазона, вызывая сначала конструктор Init, наследуемый из TFilterValidator, передавая набор символов, содержащий цифры '0'..'9' и символы '+' и '-'. Устанавливает Min в AMin и Max в AMax, задавая диапазон воспринимаемых длинных целых значений.

    См. также: TFilterValidator.Init.

Load


     constructor Load(var S: TStream);

    Строит и загружает объект проверки допустимости диапазона из потока S, вызывая сначала конструктор Load, наследуемый из TFilterValidator, а затем считывая поля Min и Max, введенные в TRangeValidator.

    См. также: TFilterValidator.Load.

Error


     procedure Error; virtual;

    Выводит на экран блок сообщений, указывающий, что введенное значение не попадает в заданный диапазон.

IsValid


     function IsValid(const S: string): Boolean; virtual;

    Преобразует строку S в целое значение и возвращает True, если результат удовлетворяет трем следующим условиям:

    Если какая либо из этих проверок завершается неудачно, IsValid возвращает False.

Store


     procedure Store(var S: TStream);

    Сохраняет объект проверки допустимости в потоке S, вызывая сначала метод Store, наследуемый из TFilterValidator, а затем записывая поля Min и Max, введенные в TRangeValidator.

    См. также: TFilterValidator.Store.

Transfer


     function Transfer(var S: String; Buffer: Pointer;
                       Flag: TVTransfer): Word; virtual;

    Объединяет три функции - DataSize, GetData и SetData - которые объект проверки допустимости диапазона может использовать для соответствующей строки ввода. Вместо установки значения строки числового ввода путем передачи строки, представляющей число, Transfer может использовать в качестве записи данных Longint, что позволяет избежать в вашем приложении выполнения преобразования.

    S - это значение строки ввода, а Buffer - это запись данных, передаваемых в строку ввода. В зависимости от значения Flag, Transfer устанавливает значение S в соответствии с числом в Buffer^ или устанавливает число в Buffer в соответствии со строкой S. Если Flag имеет значение vtSetData, Transfer устанавливает S из буфера Buffer. Если Flag равен vtGetrData, Transfer устанавливает значения в Buffer, беря его из S. Если Flag равен vtDataSize, то Transfer ни устанавливает, ни считывает данные.

    Transfer всегда возвращает размер переданных данных (в этом случае размер имеет тип Longint).

    См. также: тип TVTransfer.