Форум: "Основная";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];
ВнизКак передвинуть клавиатурный фокус в ListView? Найти похожие ветки
← →
Islander (2004-08-22 12:14) [0]Здравствуйте!
Есть ListView, в нем 5 элементов. Фокус стоит на 3-ем элементе. Я запоминаю его местонахождение через index := ListView.ItemIndex, затем очищаю ListView и заполняю заново другими данными (тоже 5 элементов). Теперь стоит задача вернуть фокус выделенному элементу. Что я и делаю ListView.ItemIndex := index. Все бы хорошо, и элемент выделяется, но...
Если фокус на ListView и я на клавиатуре нажимаю стрелку "вниз", то вдруг становится выделенным второй элемент, еще раз "вниз" - третий и т.д. А это говорит о том, что хоть и выделена 3-ий элемент, но вот фокус ввода находится на самомо пером. Почему так? Как можно этот самый фокус ввода с клавиатуры подвинуть?
← →
ssk © (2004-08-22 12:31) [1]а так?
var
LItem: TListItem;
begin
LItem := ListView1.Items[2];
LItem.Selected := True;
LItem.Focused := True;
LItem.MakeVisible(True);
ListView1.Update;
end;
← →
Islander (2004-08-22 12:44) [2]2ssk:
Спасибо, то что надо. Правда из этого списка можно оставить только LItem.Focused, остальное не играет роли. Еще раз спасибо!
← →
ssk © (2004-08-22 12:50) [3]>Правда из этого списка можно оставить только LItem.Focused, остальное не играет роли
в этом случае элемент будет выделен только рамкой фокуса и не будет подсвечен так, как если бы его выбирали мышью или клавиатурой...
← →
Islander (2004-08-22 12:55) [4]У меня немного по-другому:
LvwData.ItemIndex:=index;
LvwData.Items [LvwData.ItemIndex].Focused := true;
Так все в порядке
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.09.05;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.032 c