Вниз
Скачать: CL | DM;

Как в ListBox определить количество строк видимых на экране?   Найти похожие ветки 

 
Mishenka   (2005-12-13 20:01) [0]

Как в ListBox определить количество строк видимых на экране?


 
begin...end ©   (2005-12-13 20:18) [1]

Думаю, что можно определить только приблизительно, "в лоб":

Count := Min(Round(ListBox.ClientHeight / ListBox.ItemHeight), ListBox.Count)


 
Джо ©   (2005-12-14 01:21) [2]

Если "строго" подходить, то нужно еще учитывать случай окончания списка, то есть, определять по остаток по TopIndex и концу списка и эту разницу учитывать в значении, определяемом begin...end.


 
Leonid Troyanovsky ©   (2005-12-14 09:31) [3]


> Mishenka   (13.12.05 20:01)  
> Как в ListBox определить количество строк видимых на экране?


Индекс верхней видимой строки:

t := ListBox.Perform(LB_GETTOPINDEX, 0, 0);

Индекс последней видимой строки:

 with ListBox do
    b := LoWord(Perform(LB_ITEMFROMPOINT, 0, MakeLParam(0, ClientHeight)));

--
Regards, LVT.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.029 c
3-1132235404
CasperR
2005-11-17 16:50
2006.01.15
ODAC for Delphi 2005


3-1132162640
keymaster
2005-11-16 20:37
2006.01.15
Как узнать структуру таблицы MS ACCESS


14-1134710721
begin...end
2005-12-16 08:25
2006.01.15
С Днём рождения! 16 декабря


2-1135251122
Allocal
2005-12-22 14:32
2006.01.15
массивы в Delphi


5-1121170155
mmms
2005-07-12 16:09
2006.01.15
Как переопределить свойство




   Наверх