Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DbGrid [D6]


volodya_ ©   (2002-04-11 10:04:00) 

Мне нужно перебрать все записи из БД
Как сделать чтобы курсор не бежал от первой записи к последней в DbGrid?


Mustang   (2002-04-24 13:57:00) [1]

А я просто делаю DBGrid Hide, а затем Show.


Kuusiniemi   (2002-04-11 14:44:00) [2]

"Единственный недостаток - Grid в промежутке может "очиститься"".
Вот - вот. Вы кроме как в книжки, еще и в хелп поглядывайте иногда:
"While an application can set Enabled to False to blank out data-aware controls during processing of multiple records, a better choiceis to use the TDataSet EnableControls and DisableControls methods. Using these methods prevents the controls from blanking out during processing."
Услуги переводчиков, надеюсь, не требуются?


koks   (2002-04-11 10:24:00) [3]

Я делаю так:
DBGrid.DataSource.Enabled := false;

{перемещения курсора}

DBGrid.DataSource.Enabled := true;

<<< описано во всех учебниках >> - стовйство DataSource.Enabled ДЛЯ ЭТОГО И ПРЕДНАЗНАЧЕНО.
Единственный недостаток - Grid в промежутке может "очиститься", если перебор длинный и экран в это время перерисовывается.

Я еще вот как делал - изменяю записи используя TQuery.SQL (DML - предложения) - записи изменяются а курсор не двигается, соответственно и DBGrid стоит на месте.


Kuusiniemi   (2002-04-11 10:13:00) [4]

DBGrid.Datasource.Dataset.DisableControls;
...
DBGrid.Datasource.Dataset.EnableControls;

Ну или просто там
Table1.DisableControls;
...
Table1.EnableControls;


Mike S   (2002-04-11 10:13:00) [5]

TQuery.DisableControls;
TQuery.EnableControls;


Наверх

Титульная страница Поиск, карта сайта Написать письмо