![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Тормозит компонент TListView [D7, WinXP]
Ascana © (2005-07-14 11:58:00)Почему при первом клике мышкой по списку
TListViewотрабатывание события происходит с задержкой примерно в посекунды? Далее обращение к этому компоненту отрабатывается быстро, но вот первая пауза... Как с ней бороться?
Ascana (2005-07-14 13:23:00) [1]Код:
procedure TForm1.FormCreate(Sender: TObject);
var
li: TListItem;
begin
ListView1.Items.Clear;
li:= ListView1.Items.Add;
li.Caption:= 'Name';
li.ImageIndex:= icUser;
ListView1.ItemIndex:= -1;
end;
Это все. Никаких обработчиков нету.
Объясню проблему точнее. Когда в списке не выбрано ниодно строки (ListView1.ItemIndex:= -1;), то фон у всех строк беленький (во всяком случае так у меня, тема по-умолчанию). Как только мышкой кликаешь по одной из строк этого списка, она (строка) должна становиться синенькой (во всяком случае так у меня...) и вызываться событияOnClick,OnChangeи так далее (если они есть). Так оно все и происходит, НО! Первое срабатывание (перекрашивание фона выделяемой строки из белого в синенький) происходит с задержкой.
Kot Andrei (2005-07-14 13:06:00) [2]убрать sleep из 17-ой строки :)
Юрий Зотов (2005-07-14 12:59:00) [3]> Как с ней бороться?
Для начала - привести код обработчика этого события.