Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.018 c
14-48704
Ahmad K
2003-08-28 04:57
2003.09.15
Две операционки.


1-48601
MakNik
2003-09-03 15:57
2003.09.15
StringGrid


6-48678
ART_43
2003-07-11 15:26
2003.09.15
TWebBrowser as OLEObject


4-48829
jenya_d1
2003-07-15 08:37
2003.09.15
Выбор имени сервера в сети


1-48574
Алексей Петухов
2003-09-04 08:29
2003.09.15
Открыть документ Word




   Наверх