БелославЪ
Зарегистрирован: 19.06.2007 Сообщения: 1 Откуда: URKK
|
Добавлено: Вт Июн 19 2007 22:18 Заголовок сообщения: Перехватываю WM_HSCROLL но не могу отдать Message дальше |
|
|
Добрый день! Пишу на С++ Builder 6
Суть вопроса вот в чем.
Чтобы перехватить WM_HSCROLL у грида использовал такой код:
Код: |
class TMyGrid: public TStringGrid
{
public:
TMyGrid (TForm *AOwner):TStringGrid (Owner)
{
return;
}
int __fastcall GridWndProc (TMessage Message);
BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(WM_HSCROLL, TMessage, GridWndProc)
END_MESSAGE_MAP(TStringGrid)
}; |
Вот реализация обработчика:
Код: |
int __fastcall TMyGrid::GridWndProc (TMessage Message)
{
int aa= DefWindowProc (Handle, Message.Msg, Message.WParam, Message.LParam);
Cells[2][2] = TimeToStr(Now()); // Для проверки
Cells[3][2] = aa;
return aa;
} |
В итоге, я получаю событие WM_SCROLL и могу выполнить какие-либо действия (в данном случае изменить соержимое ячейки грида), но собственно прокрутка не выполняется, т.е. можно сколько угодно жать на горизонтальный скролл-бар, грид не прокручивается.
Что я упустил или не так сделал?
Заранее благодарен за любую помощь... _________________ фхтагн |
|