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

Вниз

Как полосы прокрутки узнают что надо скролинг еще возможен?   Найти похожие ветки 

 
ScrollBox   (2003-06-05 13:20) [0]

Мастаки, что мне надо отлавливать или это уже реализовано чтобы самому определять возможность скролинга?


 
Palladin ©   (2003-06-05 13:30) [1]

сравнивают положение бегунка и свой диапазон...
там на вкладке Events много событий...


 
ScrollBox   (2003-06-05 13:45) [2]


> сравнивают положение бегунка и свой диапазон...

нет бегунка у него Visible = false. а Position всегда 0.


 
Skier ©   (2003-06-05 13:46) [3]

WM_HSCROLL
WM_VSCROLL


 
ScrollBox   (2003-06-05 14:22) [4]


> Skier © (05.06.03 13:46

и как узнать что скролинг обьекта уже не возможен?


 
ScrollBox   (2003-06-05 14:49) [5]

мастаки, помогите... что надо отловить?
как этот месседж wm_hscroll - обработать? что он мне даст?


 
[lamer]Barmaglot ©   (2003-06-05 14:53) [6]

Готового кода нет. Посмотри F1+WM_VSCROLL

там все расписано. Например если сообщение пришло с параметром SB_LINEDOWN нужно сместится на одну позицию вниз и т.д.


 
titnn ©   (2003-06-05 22:21) [7]

>Готового кода нет. Посмотри F1+WM_VSCROLL

в справке по WM_VSCROLL как и по SB_*** нифига нету ...


 
Song ©   (2003-06-05 22:25) [8]

>>в справке по WM_VSCROLL как и по SB_*** нифига нету ...]
Да ладно..


 
titnn ©   (2003-06-05 23:00) [9]

у меня нету почему-то , D7 Enterprise


 
titnn ©   (2003-06-05 23:05) [10]

в продолжение темы , уже как то обсуждали , но толком никто ничего не сказал , TreeView , как запретить отображение HScroll , стандартными способами не получается , т.к. это не VCL компонент а Win32 .

просто ShowScrollBar(Handle,0,false); не подходит , т.к после перерисовки скролл все равно появится ...

отлавливать месаги ? но какие ?


 
titnn ©   (2003-06-05 23:12) [11]

пока предыдущее писал сам придумал ...

изменил в ComCtrls.pas

procedure TCustomTreeView.WndProc(var Message: TMessage);

begin
if not (csDesigning in ComponentState) and ((Message.Msg =
........................
else inherited WndProc(Message);
if (Handle>0) then ShowScrollBar(Handle,0,false);
end;


вот работает , но интересно насколько это есть хорошо ?







 
titnn ©   (2003-06-05 23:48) [12]

переопределил
procedure WndProc(var Message: TMessage); override;
в TTreeView , так правильнее , наверно


procedure TTreeView.WndProc(var Message: TMessage);
begin
inherited WndProc(Message);
if message.Msg=WM_CLOSE then exit;
if (message.Msg=WM_PAINT) and (Handle>0) then ShowScrollBar(Handle,0,false);
end;


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



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

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

Наверх




Память: 0.49 MB
Время: 0.013 c
11-60098
Alexander
2002-09-22 12:30
2003.06.19
Странное поведение свойства Align:


4-60465
boa
2003-04-21 09:11
2003.06.19
Проблема с получением оттенка от clBtnFace


1-60145
Alien
2003-06-06 19:04
2003.06.19
Events


1-60114
agentru
2003-06-05 22:30
2003.06.19
Создание программы случайных чисел!


3-60075
DeniM
2003-05-28 17:45
2003.06.19
работа с ADOQuery (+)