Использование Delphi для создания приложений баз данных. Устюгова В.Н. - 23 стр.

UptoLike

Составители: 

23
Когда происходит показ некоторой записи из Table2 в TDBGrid, для нее возникает
событие OnGetText и вызывается приведенный выше обработчик с DisplayText = True. В
результате в компоненте TDBGrid весь столбец, соответствующий полю Table2Company,
будет содержать значения в кавычках. Затем, если пользователь захочет в какой-либо записи
изменить значение данного поля, оно будет выдано ему для редактирования заглавными
буквами.
Если для поля определен обработчик события OnGetText, игнорируются режимы
форматирования, определенные в свойствах Display Format и Edit Mask данного поля.
Свойство property DisplayFormat: string;
применяется для форматирования при показе полей типа TDateField, TDateTimeField,
TIntegerField, TSmallintField, TTimeField, TWordField.
Для форматирования полей числового типа и типа даты могут применяться
стандартные процедуры и функции Str, DateTimeToStr, FloatToTextFmt.
Свойство property EditMask: string;
служит для контроля правильности вводимых в поле значений. Ограничения накладываются
при помощи формата. Если некоторый введенный символ не удовлетворяет маске, он не
воспринимается. Для строковых полей значение данного свойства может использоваться для
форматирования не только входных, но и выходных значений вместе со свойством
DisplayText.
Свойство го property EditMaskPtr: string;
возвращает значение маски редактирования. Поскольку свойство доступно только на чтение,
его следует использовать вместо EditMask в тех случаях, когда маска должна быть только
прочитана. В итоге мы защищаемся от случайных изменений маски.
Свойство property EditFormat: string;
применяется для форматирования значений полей типа TIntegerField, TSmallintField,
TWordField перед их редактированием. Форматирование выполняется функцией
FloatToTextFmt.
Свойство property Text: string;
содержит строковое изображение значения поля в том виде, в котором но показывается в
визуальном компоненте, когда набор данных находится в режиме редактирования (dsEdit) .
Свойство DisplayText содержит строковое изображение значения поля, когда набор
данных находится не в режиме редактирования.
Проверка введенного в поле значения
Для проверки введенного в поле значения могут быть использованы свойство IsNull и
обработчики событий OnSetText, OnValidate, OnChange.
Свойство property IsNull: Boolean;
возвращает True, если поле содержит пустое значение.
Проверить введенное в поле значение на его соответствие некоторым ограничениям
или условиям можно в обработчике события OnValidate. Это событие наступает при
изменении значения поля либо вручную, либо программно. Событие наступает до
выполнения метода Post, который запоминает изменения в базе данных. Таким образом, если
полю присвоено неверное значение, выполнение метода Post можно предотвратить,
выполнив метод Abort или возбудив исключительную ситуацию raise Exception.Create.
Этот подход контроля правильности значений называется ориентированным на поля.
     Когда происходит показ некоторой записи из Table2 в TDBGrid, для нее возникает
событие OnGetText и вызывается приведенный выше обработчик с DisplayText = True. В
результате в компоненте TDBGrid весь столбец, соответствующий полю Table2Company,
будет содержать значения в кавычках. Затем, если пользователь захочет в какой-либо записи
изменить значение данного поля, оно будет выдано ему для редактирования заглавными
буквами.
Если для поля определен обработчик события OnGetText, игнорируются режимы
форматирования, определенные в свойствах Display Format и Edit Mask данного поля.

     Свойство property DisplayFormat: string;
применяется для форматирования при показе полей типа TDateField, TDateTimeField,
TIntegerField, TSmallintField, TTimeField, TWordField.
     Для форматирования полей числового типа и типа даты могут применяться
стандартные процедуры и функции Str, DateTimeToStr, FloatToTextFmt.

  Свойство property EditMask: string;
служит для контроля правильности вводимых в поле значений. Ограничения накладываются
при помощи формата. Если некоторый введенный символ не удовлетворяет маске, он не
воспринимается. Для строковых полей значение данного свойства может использоваться для
форматирования не только входных, но и выходных значений вместе со свойством
DisplayText.

    Свойство го property EditMaskPtr: string;
возвращает значение маски редактирования. Поскольку свойство доступно только на чтение,
его следует использовать вместо EditMask в тех случаях, когда маска должна быть только
прочитана. В итоге мы защищаемся от случайных изменений маски.

Свойство property EditFormat: string;
применяется для форматирования значений полей типа TIntegerField, TSmallintField,
TWordField перед их редактированием. Форматирование выполняется функцией
FloatToTextFmt.

   Свойство property Text: string;
содержит строковое изображение значения поля в том виде, в котором но показывается в
визуальном компоненте, когда набор данных находится в режиме редактирования (dsEdit) .
     Свойство DisplayText содержит строковое изображение значения поля, когда набор
данных находится не в режиме редактирования.

                          Проверка введенного в поле значения

     Для проверки введенного в поле значения могут быть использованы свойство IsNull и
обработчики событий OnSetText, OnValidate, OnChange.

     Свойство property IsNull: Boolean;
     возвращает True, если поле содержит пустое значение.
     Проверить введенное в поле значение на его соответствие некоторым ограничениям
или условиям можно в обработчике события OnValidate. Это событие наступает при
изменении значения поля либо вручную, либо программно. Событие наступает до
выполнения метода Post, который запоминает изменения в базе данных. Таким образом, если
полю присвоено неверное значение, выполнение метода Post можно предотвратить,
выполнив метод Abort или возбудив исключительную ситуацию raise Exception.Create.
Этот подход контроля правильности значений называется ориентированным на поля.

                                           23