Delphi 3 и создание приложений баз данных

       

Временное отключение визуализации при работе с НД


При выполнении действий с НД, влекущих за собой частое изменение местоположения курсора БД, в визуальном компоненте, показывающем записи (например, TDBGrid) или текущую запись (TDBEdit и др.), будет возникать эффект "прокрутки" записей. Он не всем нравится. Кроме этого, при смене местоположения курсора БД (т.е. при смене текущей записи НД) необходимо время для отражения произошедших изменений в визуальном компоненте.

Для устранения данной проблемы имеются методы procedure DisableControls; procedure EnableControls;

Первый отключает связь с визуальным компонентом, а второй -восстанавливает ее. Например, при последовательном переборе записей НД, произведенном таким образом:

WITH Tablel do begin

DisableControls;

First;

WHILE not EOF do begin

{Какие-либо действия}

Next;

END; {while}

EnableControls;

END; {with}

в таблице компонента DBGridI не будет видно эффекта прокрутки записей. Наоборот, у пользователя возникнет иллюзия, что курсор БД сразу переустановился с текущей записи набора данных на его последнюю запись.



Содержание раздела