Вниз
Скачать: 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.013 c
4-97087
dimmu3
2002-12-16 10:38
2003.01.30
Windows Serivce


14-96943
cc43294
2003-01-11 15:27
2003.01.30
Не в тему


1-96826
Kurt_
2003-01-20 19:34
2003.01.30
Люди, подскажите как отследить нажатие функциональнх клавиш типа


1-96771
tulen
2003-01-22 18:35
2003.01.30
Про кнопку Delete


6-96920
DELPHIMUN
2002-11-28 15:31
2003.01.30
Отправка почты через компонент TNMSMTP




   Наверх