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

Изменение свойств scrollbar у TreeView   Найти похожие ветки 

 
Asker   (2007-08-26 16:50) [0]

В treeview если scrollbar не нужен то он прячется, а нужно чтоб становился серым. Решение проблемы теоретически заключается в следующем:

GetScrollInfo(LeftTreeView.Handle, SB_VERT, ScrlInfo);
ScrlInfo.fMask:=SIF_DISABLENOSCROLL;
SetScrollInfo(LeftTreeView.Handle, SB_VERT, ScrlInfo, true);

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


 
Lacmus ©   (2007-08-27 13:50) [1]

В чем дело не знаю, возможный вариант решения



procedure TForm44.TreeView1AdvancedCustomDraw(Sender: TCustomTreeView;
 const ARect: TRect; Stage: TCustomDrawStage; var DefaultDraw: Boolean);
var
 ScrollInfo: TScrollInfo;
begin
 if Stage = cdPrePaint then with TreeView1 do begin
   FillChar(ScrollInfo, SizeOf(ScrollInfo), 0);
   ScrollInfo.cbSize := SizeOf(ScrollInfo);
   ScrollInfo.fMask := SIF_ALL;
   if GetScrollInfo(Handle, SB_VERT, ScrollInfo) then begin
     if ((GetWindowLong(Handle, GWL_STYLE) and WS_VSCROLL) = 0) or (ScrollInfo.nPage = 0) then begin
       ScrollInfo.fMask := SIF_DISABLENOSCROLL or SIF_ALL;
       ScrollInfo.nPage := 1;
       ShowScrollBar(Handle, SB_VERT, True);
       SetScrollInfo(Handle, SB_VERT, ScrollInfo, True);
       EnableScrollBar(Handle, SB_VERT, ESB_DISABLE_BOTH);
     end else if Integer(ScrollInfo.nPage) <= ScrollInfo.nMax then
       EnableScrollBar(Handle, SB_VERT, ESB_ENABLE_BOTH)
   end
 end
end;



 
Asker   (2007-08-27 23:36) [2]

Спасибо за код Lacmus.



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

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



Память: 0.45 MB
Время: 0.018 c
15-1205291680
Slider007
2008-03-12 06:14
2008.04.27
С днем рождения ! 12 марта 2008 среда


15-1205726290
Slider007
2008-03-17 06:58
2008.04.27
С днем рождения ! 17 марта 2008 понедельник


15-1205828104
[fs] BandQ
2008-03-18 11:15
2008.04.27
Запуск EXE из ресурсов


3-1196327588
DenisX
2007-11-29 12:13
2008.04.27
Проблема с кодировкой (с кириллицей)


2-1206810353
206196131
2008-03-29 20:05
2008.04.27
Програмное закрытие формы из Dll




   Наверх