Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TListView - и снова вопросы....


koha! ©   (2008-10-05 20:51:00) 

- как определить высоту column?
собственно, не умею вычислить высоту колумна, когда лист-виев имеет стиль как репорт.  

2. Как определить является ли ListView.items[n] в видемой области списка?
пробовал использовать такой метод.

LI := LV.GetItemAt(Items[i].GetPosition.X, Items[i].GetPosition.Y);
if LI <> NIL then // Принадлежит видимой области
else // Находится в невидимой области
но мешает cоlumns,
есть ли еще способы?


koha!   (2008-10-05 23:12:00) [1]

> {RASkov} ©   (05.10.08 22:32) [5]
помогло, нашел все ответы...

Всё далее мона не заморачиваться всем спасыбо и пока .....


{RASkov}   (2008-10-05 22:34:00) [2]

А может высота колонки равна: количество итемов умноженное на высоту одного итема?


{RASkov}   (2008-10-05 22:32:00) [3]

Может:
function GetListViewColumnHeight(ListView: TListView): Integer;
var H: THandle; R: TRect;
begin
 H:=ListView_GetHeader(ListView.Handle);
 GetWindowRect(H, R);
 Result:=R.Bottom-R.Top;
end;

function IsVisibleItemInListView(ListView: TListView; N: Integer): Boolean;
begin
 Result:=(ListView.TopItem.Index<=N) and (N < (ListView.TopItem.Index + ListView_GetCountPerPage(ListView.Handle)));
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 ShowMessage('Высота column: '+IntToStr(GetListViewColumnHeight(ListView1)));
 if IsVisibleItemInListView(ListView1, 2) then ShowMessage('Видно 2 Item')
  else ShowMessage('2 Item не видно');
end;

Оно? Хотя по 2 возможно ListView_HitTest поможет....


DVM   (2008-10-05 22:31:00) [4]

высота колонки равна высоте клиентской части ListView


koha!   (2008-10-05 22:27:00) [5]


> {RASkov} ©   (05.10.08 22:09) [2]
>
> 1: Что значит "высоту column"?


Это значит найти сколько пикселов занимет  его вертикальная сторона у других
элементов это свойство Height


{RASkov}   (2008-10-05 22:09:00) [6]

1: Что значит "высоту column"?


koha!   (2008-10-05 20:54:00) [7]

забыл указать:
LI: TListItem;


Наверх

Титульная страница Поиск, карта сайта Написать письмо