|
|
|
MFC, маршрутизация и "горячие клавиши"
|
|||
|---|---|---|---|
|
#18+
Попробую описать проблему ... Есть MDI приложение, соответсвенно есть клиентские окна CMDIChildWnd, часть из них имеет встроенный CPropertySheet с сответствующим набором СPropertyPage; CMainFrame имеет панель инструментов, ее функционал продублирован набором "горячих клавиш" ... теперь возьмем к примеру операцию "печать": ID - ID_FILE_PRINT, "горячий ключ" - CTRL+P; запускаем CMDIChildWnd с CPropertySheet, встаем на какой-нибудь контрол (пусть editbox) и давим CTRL+P и ... ничего не происходит ... обработчик ID_FILE_PRINT(и CTRL+P, соответственно) находится непосредственно в CMDIChildWnd ... ID_FILE_PRINT не приходит ни в CMDIChildWnd::OnCmdMessage ни в СPropertyPage::OnCmdMessage и CTRL+P не ловится в CMDIChildWnd::PreTranslateMessage ... CTRL+P ловится только в СPropertyPage::PreTranslateMessage сответсвенно в нем и пишу код типа выполнить функцию печати в CMDIChildWnd ... но это же гемморой писать СPropertyPage::PreTranslateMessage для каждой СPropertyPage в CPropertySheet ... Может есть у кого-нибудь хоть какие то соображения как обойти эту ерунду ... и што это вообще за ерунда такая ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2006, 08:41 |
|
||
|
MFC, маршрутизация и "горячие клавиши"
|
|||
|---|---|---|---|
|
#18+
Типа нашел как сделать ... усе портит немодальный CPropertySheet ... нада дописать его типа подобным образом Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. типа пользуйтесь кому нада ... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2006, 15:06 |
|
||
|
|

start [/forum/topic.php?fid=57&gotonew=1&tid=2031052]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
138ms |
get topic data: |
10ms |
get first new msg: |
5ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 254ms |
| total: | 483ms |

| 0 / 0 |
