Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.06.19;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
14-60329
[NIKEL]
2003-06-01 17:43
2003.06.19
Хайку


7-60442
Zirus
2003-04-15 10:06
2003.06.19
Возведение в степень


7-60445
Ixion
2003-04-12 03:18
2003.06.19
Управление TV с ИК порта


3-60063
Андрей
2003-05-23 05:18
2003.06.19
Как из программы добавить алиас ODBC


6-60312
vinnety
2003-04-15 22:43
2003.06.19
Текстовое сообщение через DcomConnection





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский