Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > DBGRIDEH и BeginUpdate


Автор: Burka 27.10.2007, 13:58
Подскажите, что можно сделать, что бы DBGRideh при переборе записей не прорисовавался? То есть сделать что-нибудь вроде BeginUpdate-EndUpdate.

Автор: VICTAR 27.10.2007, 15:05
Можно попробовать LockWindowUpdate

Добавлено через 4 минуты и 8 секунд
На всякий случай:
Код

LockWindowUpdate(DBGRideh.Handle);
//какие-либо действия
LockWindowUpdate(0);

Автор: Burka 27.10.2007, 16:37
потестировал:
 время если скрывать таблицу меньше всего, если применять LockWindowUpdate(DBGRideh.Handle); больше всего, а если ничего не делать  - между ними =)

мне кстати это для временных показателей нужно ,а не для того что бы просто не перерисовывалось.

Автор: Bose 29.10.2007, 16:06
Цитата(Burka @  27.10.2007,  13:58 Найти цитируемый пост)
Подскажите, что можно сделать, что бы DBGRideh при переборе записей не прорисовавался? То есть сделать что-нибудь вроде BeginUpdate-EndUpdate.

Вызывай BeginUpdate-EndUpdate у соответствующего Dataseta. ;)

Можно так:
Код

DBGrudEh1.Dataseource.Dataset.BeginUpdate;

Автор: Burka 30.10.2007, 09:51
смешно  smile 

я использую ADO, проверил уже в 10й раз, нету у датасетов бегинАпдейт

Автор: Bose 30.10.2007, 19:26
Цитата(Burka @  30.10.2007,  09:51 Найти цитируемый пост)
я использую ADO, проверил уже в 10й раз, нету у датасетов бегинАпдейт

Извини, перепутал. Я всё время путаю эти два метода.  smile 

DataSource1.DataSet.DisableControls;

и

DataSource1.DataSet.EnableControls;

Проверил, на ADO есть. smile 

Автор: Burka 1.11.2007, 12:23
Спасибо! Работает значительно быстрее чем остальные варианты.

Автор: Bose 1.11.2007, 16:56
Цитата(Burka @  1.11.2007,  12:23 Найти цитируемый пост)
Спасибо! Работает значительно быстрее чем остальные варианты.

Это хорошо что так. На здоровье.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)