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

Вниз

Grid   Найти похожие ветки 

 
ViJen   (2003-07-15 15:48) [0]

Мастера добрый день!
Ответьте пожалуйста - grid поставленный на форму уже не является окном и не получает сообщений?
Конкретно что бы хотелось сделать - это поймать сообщение на прокрутку grid"a и скрывать столбцы по мере прокрутки.
Это реально сделать?


 
clickmaker ©   (2003-07-15 15:53) [1]

А с чего бы ему перестать быть окном? WM_HSCROLL, WM_VSCROLL


 
Prov ©   (2003-07-15 15:56) [2]

Лови сообщения: WH_HSCROLL и WM_VSCROLL


 
ViJen   (2003-07-15 15:57) [3]

Для формы я понимаю как написать процедуру - а как для грида?
конкретно - где ее объявить?


 
[lamer]Barmaglot ©   (2003-07-15 16:13) [4]

Там же где для окна?


 
ViJen   (2003-07-15 16:21) [5]

В общем для формы это выглядит так
объявление:
procedure WMHSCROLL(var Message: TWMHSCROLL); message WM_HSCROLL;

потом использование допустим:

procedure TfrmMAin.WMHSCROLL(var Message: TWMHSCROLL);
begin
inherited;
beep;
end;

а как написать для грида правильно?


 
clickmaker ©   (2003-07-15 16:23) [6]

procedure NewGridProc(var Message: TMessage);
FOldGridProc: TWndMethod;

FOldGridProc := Grid.WindowProc;
Grid.WindowProc := NewGridProc;

procedure TForm1.NewGridProc(var Message: TMessage);
begin
case Message.Msg of
( Message) procedure NewGridProc(var Message: TMessage);
FOldGridProc: TWndMethod;

FOldGridProc := Grid.WindowProc;
Grid.WindowProc := NewGridProc;

procedure TForm1.NewGridProc(var Message: TMessage);
begin
case Message.Msg of
WM_HSCROLL:
...
FOldGridProc(Message); // не забыть вызвать для необрабатываемых сообщений
end;




 
ViJen   (2003-07-15 17:01) [7]

Спасибки! Все понятно.



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
6-48680
AlexT1000
2003-07-14 11:24
2003.09.15
Внедрение в IE ( п отипу Reget)


7-48797
alexis
2003-07-01 18:11
2003.09.15
Как узнать о попытке изменить имя файла с расширением .exe и ....


3-48399
rh
2003-08-26 12:39
2003.09.15
Записать текущую дату


3-48403
Владимир__
2003-08-26 10:32
2003.09.15
Помогите!!!


1-48561
stud
2003-09-04 09:57
2003.09.15
обновление