Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.05;
Скачать: CL | DM;

Вниз

Тормоза после фильтрации   Найти похожие ветки 

 
Lamer   (2003-05-15 16:38) [0]

Мастера. Помогите. До фильтрации всё нормально. Нормально выполняются все режимы. Но стоит провести фильтрацию, как эти же действия выполняются на жутких тормозах. Вот пример кода, который начинает тормозить:
procedure TForm1.CheckBox1Click(Sender: TObject);
var
check:boolean;//индикатор нажатости Checkbox
current:integer;//нужен для индикации хода заполнения combobox данными
begin
form1.table1.filtered:=false;//чтобы перебор был по всей таблице
if checkbox1.Checked then// если при щелчке checkbox уже был в состоянии checked..
check:=false
else
check:=true;

if check=false then
begin
Form1.Table1.First;
Combobox4.Clear;
current:=0;
gauge1.Progress:=current;
While not Form1.Table1.Eof do
begin
if form1.table1.fieldbyname("Word").asstring=stimul then
if (Combobox4.items.indexof(form1.table1.fieldbyname("Answer").asstring)=-1)and(Form1.table1.FieldByName("Answer").asstring<>"") then
combobox4.items.add(Form1.table1.fieldbyname("Answer").asstring);
Form1.table1.next;
inc(current);
gauge1.Progress:=current;
end;
combobox4.itemindex:=0;
Form1.table1.first;
end
else// если был checked, то всё зачистить
begin
combobox4.clear;
gauge1.progress:=0;
end;

end;
После этого я провожу фильтрацию по одному из пунктов combobox"a.
Смортю результат и отменяю фильтрацию (filtered:=false);
После этого процедура начинает тормозить при выполнении.


 
гончий   (2003-05-15 16:45) [1]

У тебя в afterscroll не вызывается RecordCount случайно, он как раз и имеет свойство тормозить после фильтрации...


 
Lamer   (2003-05-15 16:56) [2]

Используется для определения: gauge1.MaxValue:=form1.table1.RecordCount;
Выставил его в 20000(чтобы наверняка) в инспекторе в коде закомментировал. Ничего не изменилось.:(


 
Lamer   (2003-05-15 17:25) [3]

Мастера. Поправка. Как выяснил, дело даже не в фильтрации.
На форме несколько закладок(pagecontrol). На первой задаются параметры фильтрации, на второй - отображается собственно таблица(10000 записей), на третьей - просто информация. Даже при простом переключении между закладками 1 и 2 всё начинает тормозить.


 
ЮЮ ©   (2003-05-16 03:07) [4]

А когда, ты думаешь, производится фильтрация? Именно при необходимости отобразить в гриде - отсюда и тормоза. Пора уже пользоваться цивилизованными методами отбора записей - запросами



Страницы: 1 вся ветка

Текущий архив: 2003.06.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
14-13407
LOX
2003-05-11 14:25
2003.06.05
Cлепил браузер


3-13000
SV&#922;
2003-05-19 12:19
2003.06.05
InterBase и UNICODE


1-13246
Kudatsky
2003-05-23 09:45
2003.06.05
Ошибка при работе с Excel


1-13219
dfgdfgsdg
2003-05-26 23:08
2003.06.05
Активация формы?


1-13132
grusty
2003-05-24 17:16
2003.06.05
Как создать директорию?