Вниз
Скачать: 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.013 c
14-48712
Ru
2003-08-27 14:57
2003.09.15
Давайте сделаем гипотетическое представление


1-48515
Sfagnum
2003-09-02 15:30
2003.09.15
Можно ли результатом функции сделать динамический массив записей


14-48711
Rouse_
2003-08-28 03:34
2003.09.15
Ох уж эти модели...


3-48404
Vitalygavrilov
2003-08-26 08:27
2003.09.15
Как произвести обмен данными между MDI-окнами


1-48547
Sam Stone
2003-09-01 18:42
2003.09.15
функции в dll ках




   Наверх