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

Вниз

Размеры прокрутки   Найти похожие ветки 

 
JanMihail ©   (2007-07-06 16:55) [0]

Как определить размеры полосы прокрутки? Т.е. ширину и высоту прокрутки в определенном окне. Известен HWND окна.
Пробовал так:
pInfo: TScrollBarInfo;
...
 GetScrollBarInfo(Handle, Handle, pInfo);
 Caption := IntToStr(pInfo.rcScrollBar.Right - pInfo.rcScrollBar.Left);

По коду в Caption формы должна записаться ширина прокрутки, но почему то всегда возвращается 0.
Помогите пожалуйста!!!


 
Dib@zol ©   (2007-07-06 17:00) [1]

Должно прокатить...

function GetSBDimens(W:HWND):TRect;
var wp : WINDOWPLACEMENT;
begin
 GetWindowPlacement(W, @wp);
 Result:=wp.rcNormalPosition;
end;


 
JanMihail ©   (2007-07-06 17:15) [2]


> Dib@zol ©   (06.07.07 17:00) [1]

Это не то. Мне не нужны размеры окна, мне нужны размеры прокрутки(ScrollBar)


 
Dib@zol ©   (2007-07-06 17:30) [3]

rcScrollBar: TRect;
Нет ну а что это по-твоему? Хочешь сказать, скроллбар не окно, а Handle-это HWND родителя? Тогда вызывай FindWindowEx(Handle, 0, "SCROLLBAR", nil) и уже у него получай размеры по методу из [1].


 
clickmaker ©   (2007-07-06 17:33) [4]


> GetScrollBarInfo(Handle, Handle, pInfo);


pInfo.cbSize := Sizeof(TScrollBarInfo);
GetScrollBarInfo(Handle, OBJID_VSCROLL, pInfo);


 
Юрий Зотов ©   (2007-07-06 17:47) [5]

GetSystemMetrics?


 
Dib@zol ©   (2007-07-06 17:57) [6]


> Юрий Зотов ©   (06.07.07 17:47) [5]
> ширину и высоту прокрутки


Через GetSystemMetrics можно получить только одну из этих величин для данного скроллбара. => не катит.


 
JanMihail ©   (2007-07-06 18:14) [7]

СПАСИБО clickmaker!!!


 
hommRO   (2007-07-06 22:11) [8]

> [6] Dib@zol ©   (06.07.07 17:57)
> Через GetSystemMetrics можно получить только одну из этих
> величин для данного скроллбара.

Всегда считал, что вторую можно получить с помощью банальной эрудиции и нехитрой математики.



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

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

Наверх




Память: 0.48 MB
Время: 0.028 c
11-1169551012
MTsv DN
2007-01-23 14:16
2007.09.16
Поменять LVItems с наименьшими временными затратами...


15-1187359717
Ricks
2007-08-17 18:08
2007.09.16
Зацените фотографии


15-1187185908
@!!ex
2007-08-15 17:51
2007.09.16
Причина алкоголизма.


15-1187700376
сейчас_злой
2007-08-21 16:46
2007.09.16
Ищу работу... есть опыт програмирования на Delphy


15-1187347939
Vrangel
2007-08-17 14:52
2007.09.16
Решение простой задачи?