![]() |
|
|
![]()
|
|
| Nuzur |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 4.7.2004 Репутация: 3 Всего: 5 |
Знаю что может это признак некоректного планирования. Скорее всего что оно так и есть. НО. Есть тулбар при клике на любой item вызывалась функция которая проверяла бы кое что. Просто тулбар сейчас не маленький а при его разширении и вовсе будет не красиво. какие есть выходы? Кроме смены проффесии, страны, пола и сексуальной ориентации есть решения? -------------------- Never again... |
|||
|
||||
| Greeen |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 710 Регистрация: 13.8.2006 Где: Петербург Репутация: 10 Всего: 18 |
можно например определить что итемы тулбара будут иметь идентификаторы скажем из диапазона 5000 - 6000
и тогда ON_COMMAND_RANGE(IDC_FIRST_TLBBTN, IDC_LAST_TLBBTN, OnToolbarButton) CYourDlg::OnToolbarButton(UINT nID) { // ..... } -------------------- Подпись больше не нужна |
|||
|
||||
| Nuzur |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 4.7.2004 Репутация: 3 Всего: 5 |
Greeen, Попробывал так но не работает ИД идут по порядку, сделал так
.h
.cpp
Но дебаггер туды не попадает Это сообщение отредактировал(а) Nuzur - 30.1.2007, 19:20 -------------------- Never again... |
||||
|
|||||
| Greeen |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 710 Регистрация: 13.8.2006 Где: Петербург Репутация: 10 Всего: 18 |
идентификаторы можно изменить в resource.h
-------------------- Подпись больше не нужна |
|||
|
||||
| Nuzur |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 4.7.2004 Репутация: 3 Всего: 5 |
Greeen, идентификаторы идут по порядку. Просто видно для тулбаров оно не предназначено
Может попробуем пройтись по стандартным проблемам? Может я что-то пропустил? Это сообщение отредактировал(а) Nuzur - 31.1.2007, 11:58 -------------------- Never again... |
|||
|
||||
| Nuzur |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 4.7.2004 Репутация: 3 Всего: 5 |
Создаю еще один пост дабы те кто столкнется с такой же проблемой был в курсе.
Дело в том что мелкомягкие дают такой вот пример:
в таком варианте у меня ничего не сработало. А вот если так :
Но теперь другая БЕДА. Теперь не вызываются функции обработчики, как поправить? Насколько я понимаю физику процессса, то я получил сообщение в свой обработчик всего тулбара и на том и ладно, типа дальше оно никуда не пошло. ВНИМАНИЕ ВОПРОС: как вызвать функцию обработчик зная ее ИД? Это сообщение отредактировал(а) Nuzur - 31.1.2007, 12:48 -------------------- Never again... |
||||
|
|||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Оставь MessageMap как был (с обработчиками для каждой команды), но переопредели OnCmdMsg. Сначала общая дополнительная обработка, потом вызов базового метода. Только не забудь, что туда же попадают ON_UPDATE_COMMAND_UI, так что проверяй nCode.
Добавлено @ 13:29 В карте сообщений срабатывает самый первый обработчик. Естественно, если COMMAND_RANGE стоит вначале, то попав туда, больше никуда не попадешь. -------------------- ... |
|||
|
||||
| Nuzur |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 4.7.2004 Репутация: 3 Всего: 5 |
Earnest, я решил проблему вызовом " в ручную". Но спасибо большое за совет. Просто проблема в том что проект огромный и лезть OnCmdMsg мне страшно так как он иногда сам по себе разваливается и без моего вмешательства.
-------------------- Never again... |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |