Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.10.2009, 19:04   #1
Anatol_rus
Пользователь
 
Регистрация: 30.09.2008
Сообщений: 33
По умолчанию Вопрос по ListView

Всем доброго времени суток, вопрос собственно такой, есть индес итема из списка(например 48), как узнать что строчка с этим индексом в данный момент не показана???
Anatol_rus вне форума Ответить с цитированием
Старый 06.10.2009, 19:14   #2
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

У меня была такая проблема...
Мне нужно было посылать клик на итем)
Поиграй с высотой итема, высотой лист-вьева и позицией первого итема лист-вьева
TwiX вне форума Ответить с цитированием
Старый 06.10.2009, 20:29   #3
andreibtzt
Заблокирован
 
Регистрация: 04.04.2009
Сообщений: 43
По умолчанию

var
i:Integer;
begin
for i:=0 to ListBox1.Count do
if not (ListBox1.ItemIndex=48) then
ShowMessage('....');

end;
andreibtzt вне форума Ответить с цитированием
Старый 06.10.2009, 20:29   #4
andreibtzt
Заблокирован
 
Регистрация: 04.04.2009
Сообщений: 43
По умолчанию

Код:
var
  i:Integer;
begin
 for i:=0 to ListBox1.Count do
  if not (ListBox1.ItemIndex=48) then
   ShowMessage('....');

end;
andreibtzt вне форума Ответить с цитированием
Старый 06.10.2009, 20:52   #5
Anatol_rus
Пользователь
 
Регистрация: 30.09.2008
Сообщений: 33
По умолчанию

Цитата:
Сообщение от andreibtzt Посмотреть сообщение
var
i:Integer;
begin
for i:=0 to ListBox1.Count do
if not (ListBox1.ItemIndex=48) then
ShowMessage('....');

end;
ТЫ ХОТЬ ПОНЯЛ ВОПРОС:
1. вОПРОС БЫЛ ПРО ListView
2. Мне нужно узнать виден ли в данный момент тот итем который мне нужен
Anatol_rus вне форума Ответить с цитированием
Старый 06.10.2009, 21:12   #6
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,527
По умолчанию

видны следующие

первый = верхний видимый
число видимых = высота компонента / высота строки (Item-а)

result:= ( index>=первый ) and (index<=перый +число видимых );
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 06.10.2009 в 21:15.
evg_m вне форума Ответить с цитированием
Старый 07.10.2009, 09:17   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Насколько я знаю, у каждого итема ЛистВью есть свойство
ListView1.Items[0].Position.
Вот и проверять ели иго координаты больше чем ширина или высота - итем невидим.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как перетащить элемент ListView в другой ListView? Paul Hindenburg Компоненты Delphi 5 26.01.2013 11:35
Listview Neymexa Общие вопросы .NET 0 13.05.2009 21:19
ListView Cpluser Общие вопросы .NET 4 13.04.2009 22:45
Вопрос про ListView.. Robert Компоненты Delphi 2 03.12.2008 10:02
Вопрос про ListView Booblik Компоненты Delphi 1 14.04.2007 23:39