Вниз
Скачать: CL | DM;

Реакция на быстрое изменение выбранной строки в списке   Найти похожие ветки 

 
kva   (2003-01-22 11:36) [0]

Привет всем! Необходимо по изменению ListBox.ItemIndex выполнять некоторую довольно длительную процедуру, входным параметром которой является элемент списка. Хочу при быстром изменении (например, когда пробегаю список в Listbox"е с помощью клавиатуры) отключить, не запускать эту процедуру, пока не будет сделан окончательный выбор.
Первое, что пришло в голову - это использовать таймер. Например, в OnKeyPress делать Timer.Enabled на 200 мсек и уже по OnTimer запускать эту процедуру и затем отключать таймер.
Какие еще способы существуют?
Слышал по OnIdle, но сам не делал. Может кто кусок кода бросит..
Заранее спасибо.


 
stone ©   (2003-01-22 11:44) [1]

Запускай процедуру при Listbox.OnCloseUp


 
REA ©   (2003-01-22 12:25) [2]

OnCloseUp кстати кажется не срабатывает при выборе с клавиатуры, так что осторожно. Может подготовить кэш, чтобы процедура была не столь длительной?


 
kva   (2003-01-22 12:39) [3]

Listbox.OnCloseUp ????
Listbox не DBLookupComboBox, и не TDateTimePicker

Еще варианты ?


 
kva   (2003-01-22 13:10) [4]

Нет вариантов?


 
VAleksey ©   (2003-01-22 13:20) [5]

Да нормальный вариант с таймером. Главное простой.


 
VAleksey ©   (2003-01-22 13:21) [6]

Второе что пришло в голову :))
Может все-таки, если процедура длительная, явно ее стартовать ? По клику на кнопке " Выбрать элемент ", например ?



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
3-96611
Zn
2003-01-13 17:41
2003.01.30
Ошибка при работе с параметром в ADODataSet.


7-97044
lavish
2002-11-17 20:26
2003.01.30
Виртуальный диск


4-97081
Kirill45
2002-12-14 04:10
2003.01.30
GetText


6-96905
TankMan
2002-11-27 03:06
2003.01.30
Как узнать свой IP в сетке а не в Инете....


1-96778
Dima-k17
2003-01-22 21:05
2003.01.30
Четность числа




   Наверх