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

Вниз

Как пролистать ListView до нужной позиции?   Найти похожие ветки 

 
tytus ©   (2007-03-03 12:21) [0]

BoДоброго дня Всем! Имеется ListView (он же LV1) со сотилем vsReport. В поле Edit ввожу текст, и в обработчику пишу:
procedure TRepParamsFm.Edit1Change(Sender: TObject);
var
 LF:LV_FINDINFO;
 ps:PChar;
 len:integer;
 res:integer;
begin
len:=Length(Trim(Edit1.Text));
if len=0 then exit;
len:=len+1;
GetMem(ps,len);
StrPCopy(ps,Edit1.Text);
LF.psz:=ps;
LF.flags:=LVFI_PARTIAL or LVFI_STRING;
res:=SendMessage(LV1.Handle,LVM_FINDITEM,-1,Integer(@LF));
FreeMem(ps);

SB1.Panels[0].Text:=IntToStr(Res);
end;
Вот такой простой поиск нужного элемента по строке. Как теперь мне пролистать ListView, чтобы был виден найденный элемент (его индекс находится в переменной res), как это поисходит в ListBox-e, при посылке LB_FINDSTRING????


 
Loginov Dmitry ©   (2007-03-03 12:40) [1]

ItemIndex
Focused


 
tytus ©   (2007-03-03 12:55) [2]

>Loginov Dmitry ©   (03.03.07 12:40) [1]
LV1.ItemIndex:=res;
LV1.focused;
не помогает, и не прокручивает список.


 
MBo ©   (2007-03-03 13:05) [3]

MakeVisible


 
REA   (2007-03-03 13:07) [4]

Item.MakeVisible


 
tytus ©   (2007-03-03 13:28) [5]

MBo, REA,Спасибо.
А как сделать, чтобы элемент списка был выделенным, но сохранилась возможность дальнейшего ввода текста в Edit-e?
LV1.ItemIndex:=res;
LV1.Items[res].MakeVisible(true);
Затем, чтобы данный элемент стал выделенным, нужно выполнить
LV1.SetFocus;
И все - эдит теряет фокус ввода. Ежели после LV1.SetFocus; передать фокус ввода эдиту - то элемент списка перестает бытьт выделенным. Как быть...???


 
REA   (2007-03-03 16:27) [6]

HideSelection := False



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

Форум: "Начинающим";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.059 c
1-1170401901
Салат
2007-02-02 10:38
2007.03.25
выравнивание alRight/Left и alBottom на форме


2-1172806023
zap8
2007-03-02 06:27
2007.03.25
Обмен данными между динамическим и статическим массивами


15-1172901760
SerJaNT
2007-03-03 09:02
2007.03.25
Подскажите


4-1162362348
romick
2006-11-01 09:25
2007.03.25
Как проверить наличие бумаги в USB-принтере?


9-1146058818
Checkers
2006-04-26 17:40
2007.03.25
Шашки





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский