Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.01.29;
Скачать: CL | DM;

Вниз

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

 
Элия   (2010-08-31 09:18) [0]

В ListView скролл отображается динамически, то есть только если айтемов много и они не помещаются в заданную высоту ListView. Можно ли как-то определить отображается ли скролл в данный момент или нет? Думала, что есть что-то типа HasScroll, но такого не нашла...


 
Ф1   (2010-08-31 09:39) [1]

А зачем?

http://www.delphisources.ru/pages/faq/base/hide_lw_scrolls.html


 
Элия   (2010-08-31 10:01) [2]

Хочу выставить правильно ширину столбца в ListView)
Если я выставляю  ширину столбца я учетом, что у меня всегда есть скролл, то в случае, если айтемов много и скролл действительно есть, при выделении айтема все смотрится ок, а если айтемов мало и скролла нет, то при выделении айтема справа остается белая полоса шириной в скролбар.
Надеюсь, получилось объяснить)
По ссылке... К сожалению, не поняла как это можно применить в данном случае. Там вроде рассказывает как отобразить или спрятать скроллбар, а как определить отображен ли он - нет.
Конечно, можно сделать так, что скроллбар всегда будет отображаться, просто когда мало айтемов, он будет задизаблен...


 
Anatoly Podgoretsky ©   (2010-08-31 10:04) [3]

> Элия  (31.08.2010 10:01:02)  [2]

Будет только хуже, размеры начнут дергаться.


 
QAZ   (2010-08-31 11:45) [4]


> если айтемов много и они не помещаются в заданную высоту
> ListView

так и определяется


 
Юрий Зотов ©   (2010-09-01 10:14) [5]

> Элия   (31.08.10 10:01) [2]
> Хочу выставить правильно ширину столбца в ListView)

Выставляйте относительно ClientWidth. Тогда всегда будет правильно, хоть виден скролл, хоть не виден.


 
Rouse_ ©   (2010-09-01 16:15) [6]

Покрути вот это: http://rouse.drkb.ru/components.php#gslistview
Там у колонок флаг Autosize есть...


 
Макс Черных   (2010-09-01 16:28) [7]


> Можно ли как-то определить отображается ли скролл в данный
> момент или нет?


Конечно можно. Например, для вертикального скролла:

function TForm2.IsScrollBarVisible: boolean;
var SbInfo: TScrollBarInfo;
begin
 SbInfo.cbSize := SizeOf(TScrollBarInfo);
 if GetScrollBarInfo(ListView.Handle, OBJID_VSCROLL, SbInfo)
 then
   Result := (SbInfo.rgstate[0] and STATE_SYSTEM_INVISIBLE) = 0
 else
   Result := false;
end;


Однако, куда лучше прислушаться к мнению Юрий Зотов ©   (01.09.10 10:14) [5]



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

Текущий архив: 2012.01.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.008 c
1-1282634224
Дмитрий Белькевич
2010-08-24 11:17
2012.01.29
TJvDBTreeView, хинт (ToolTips) обрезается до 80-ти символов.


15-1318409914
Псарь
2011-10-12 12:58
2012.01.29
Нужен исходник AS3...


15-1318427502
Бездомный
2011-10-12 17:51
2012.01.29
Юморок


15-1318019402
Юрий
2011-10-08 00:30
2012.01.29
С днем рождения ! 8 октября 2011 суббота


1-1282232239
DrAndriy
2010-08-19 19:37
2012.01.29
Проблема с модулями с модулями DesignIntf и DesignEditors. Где на