Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.02.17;
Скачать: [xml.tar.bz2];

Вниз

AfterScroll   Найти похожие ветки 

 
LazorenkoX   (2003-01-30 14:10) [0]

Я использую ADO (TADOQuery) и mdb (Access 2000). Почему когда я вызываю методы - Last, First, Refresh, то событие AfterScroll вызывается несколько раз?


 
sniknik   (2003-01-30 14:27) [1]

Occurs after an application scrolls from one record to another.

property AfterScroll: TDataSetNotifyEvent;

Description

Write an AfterScroll event handler to take specific action immediately after an application scrolls to another record as a result of a call to the First, Last, MoveBy, Next, Prior, FindKey, FindFirst, FindNext, FindLast, FindPrior, and Locate methods. AfterScroll is called after all other events triggered by these methods and any other methods that switch from record to record in the dataset.

возможно поэтому.


 
LazorenkoX   (2003-01-30 14:32) [2]

А какое событие посоветуете? Мне надо только один раз обработать при переходе на окончательную позицию.


 
Соловьев   (2003-01-30 14:37) [3]

Что предполагает этот скролинг? Подробнее опиши задачу.


 
LazorenkoX   (2003-01-30 14:42) [4]

Меняеться запись, после чего должно произойти событие, например MessageBox. Я использую AfterScroll, но если вызвать метод Last, First или Refresh, то AfterScroll вызывается раз 6 и я получаю кучу MessageBox-ов. Что делать? Может есть другое событие?


 
sniknik   (2003-01-30 14:44) [5]

Не знаю, у меня срабатывает один раз, как надо.

Че хотел сказать, у тебя возможно одно событие вызывает другое, или делаешь не только его, если так проследи логику. Начни с простейшего варианта 1 форма 1 квери 1 событие 1 кнопка с ласт/ферст.


 
Соловьев   (2003-01-30 14:46) [6]

>>событие, например MessageBox
Прикольно :)))))
Ну а если серьезно, то как ты вызываешь методы Last, First, Refresh?
Если DBNavigator, то по нажатии этих кнопок вызывай свое событие.


 
sniknik   (2003-01-30 14:53) [7]

вряд ли DBNavigator виноват, поставил его себе результат анологичен след.зап. 1 вызов события, последняя еще один вызов. (методы навигатора не менял, стандартные)


 
LazorenkoX   (2003-01-30 14:55) [8]

>>событие, например MessageBox
Прикольно :)))))


Там большой алгоритм, а не MessageBox, но это не важно. Методы я вызываю много откуда, куча разных форм и не только из кнопок, а общее только TADOQuery. Просто прога тормозит на этом моменте, а меня это уже запарило!!!


 
Соловьев   (2003-01-30 14:57) [9]

Я тоже проверил AfteScroll - срабатывает один раз. Чего-то LazorenkoX © не договаривает...


 
Соловьев   (2003-01-30 14:59) [10]

большой алгоритм ... прога тормозит на этом моменте
Так пересмотри свой алгоритм...
Что делает твой алгоритм?


 
Max Zyuzin   (2003-01-30 15:04) [11]

>LazorenkoX © (30.01.03 14:55)
Скорее всего у тебя в результате работы твоего алгоритма методы эти вызываются по нескольку раз...
Посмотри их внимательно исчо раз...


 
LazorenkoX   (2003-01-30 17:34) [12]

Я так и думал, спасибо, буду искать...


 
LazorenkoX   (2003-01-30 18:21) [13]

Нашёл грабли - DevExpress TdxDBGrid!!! Это с её помощью при вызове Last, First и Refresh событие AfterScroll вызывается несколько раз (4-10 раз). Может смогу от этого избавиться. Кто-нибудь сталкивался с этим?


 
sniknik   (2003-01-30 18:50) [14]

> Может смогу от этого избавиться.
конечно! избавься от DevExpress TdxDBGrid и пользуйся стандартным DBGrid. (если сразу не решишся подумай что он еще втихаря от тебя задваивает и удесятеряет? и не от этого ли тормоза)

> Кто-нибудь сталкивался с этим?
ну ктото наверняка, я нет, стараюсь не использовать нестандартных компонент.


 
LazorenkoX   (2003-01-30 19:26) [15]

Нашёл решение проблемы - dxDBGrid.OptionsDB.PartialLoad установить в false!!!

>> избавься от DevExpress TdxDBGrid и пользуйся стандартным DBGrid

Я бы с удовольствием, но слабоватый будет DBGrid в плане возможностей.



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

Форум: "Базы";
Текущий архив: 2003.02.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
1-53041
iNew
2003-02-11 05:08
2003.02.17
Как определить достаточно на дискете места для записи или нет


14-53174
gn
2003-02-03 10:08
2003.02.17
Старое и доброе


14-53263
ан
2003-02-01 11:55
2003.02.17
Помогите!!!!! ПЛиз


14-53214
Sancho
2003-01-31 17:37
2003.02.17
Несколко операционок


1-53080
Yrtimd
2003-02-06 21:01
2003.02.17
Получение снимка экрана в





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский