Отлов событий
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Отлов событий Expand / Collapse
Автор
Сообщение
19.01.2007 14:03
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 09.10.2007 18:18
Сообщ.: 70, Visits: 747
Есть класс грида CGridCtrl, в котором следующий код:

BEGIN_EVENTSINK_MAP(CGridCtrl, CWnd)
ON_EVENT(CGridCtrl, IDCGRID1, 41, UnboundReadDataEx, VTS_DISPATCH VTS_PVARIANT VTS_I4 VTS_PI4)
END_EVENTSINK_MAP()


IDCGRID1 я зараннее не знаю.
id грида я хочу передавать классу после его объявления.

Макрос
BEGIN_EVENTSINK_MAP(CGridCtrl, CWnd)

выполняется до объявления класса, поэтому возникает ошибка.
Можно ли отловить это событие (41) без привязки в IDCGRID1, например, в функции
PreTranslateMessage
?

Спасибо.
Сообщ. #909892
22.01.2007 11:42
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 09.10.2007 18:18
Сообщ.: 70, Visits: 747
Пока что вижу одино решение:

BEGIN_EVENTSINK_MAP(CTDBGridUnbound, CTDBGridCtrl)
ON_EVENT(CTDBGridUnbound, IDC_TDBGRID1, 41, UnboundReadDataEx, VTS_DISPATCH VTS_PVARIANT VTS_I4 VTS_PI4)
...
ON_EVENT(CTDBGridUnbound, IDC_TDBGRID5, 41, UnboundReadDataEx, VTS_DISPATCH VTS_PVARIANT VTS_I4 VTS_PI4)
END_EVENTSINK_MAP()


Подскажите, почему не срабатывает следуещее:

ON_EVENT_RANGE(CTDBGridUnbound, 1, 10000, UnboundReadDataEx, VTS_DISPATCH VTS_PVARIANT VTS_I4 VTS_PI4)


Спасибо.
Сообщ. #909935
22.01.2007 12:10
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

участник
Last Login: 09.10.2007 18:18
Сообщ.: 70, Visits: 747
Всем спасибо, разобрался.
Неправильно указал параметры:

ON_EVENT_RANGE(CTDBGridUnbound, 1, 10000, 41, UnboundReadDataEx, VTS_I4 VTS_DISPATCH VTS_PVARIANT VTS_I4 VTS_PI4)
Сообщ. #909936
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl

Время GMT +3:00, Сейчас 12:04