关于子窗口和父窗口的消息问题

圣诞老人123 2010-12-14 02:25:23
有一个tabctrl 包含4个tab 点击其中每一个的话把其中的子dialog(child显示) 我在主Dialog上加了快捷键 比如新建什么的 但是在切换tabctl的时候 加入点击 其中子dialog的内容使其有焦点的话 这样我的主dialog的PreTranslateMessage就收不到 快捷键的消息 只能在相应的有焦点的 dialog中收到 我有点迷糊 不大明白里面的机制 哪位大哥为小弟解惑解惑 不是在dialog中控件 控件属于子窗口 但是消息机制是先通过 dialog 然后分发到控件里的么?
...全文
75 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
圣诞老人123 2010-12-14
  • 打赏
  • 举报
回复
就是 我在点击tabctrl的时候 选择性的现实那些dialog 而这些dialog是通过create创建的 制定了父窗口为this那不是同上面一个大的dialog里面的空间相似 那消息处理也应该相同啊 为什么这里不同 求解
圣诞老人123 2010-12-14
  • 打赏
  • 举报
回复
蝙蝠大哥 那个是父类那个是父窗口我迷糊了~~~~~忘告知其中的不同
圣诞老人123 2010-12-14
  • 打赏
  • 举报
回复
恩 兔子部长 我知道用反射可以 但是我想知道 这里的消息处理过程和我最顶上题目那 提出的消息处理有什么不一样
ouyh12345 2010-12-14
  • 打赏
  • 举报
回复
父类和父窗口不是一回事
Eleven 2010-12-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 chenyongsuda 的回复:]
但是假如有一个dialog dialog里面有个BTN控件 然后把控件子类化 这样btn的父类是dialog 收到消息肯定是 dialog 然后dialog判断点击在哪 ?子控件是否有处理该消息 如果有就子控件处理没有就是父dialog处理

和上面那种情况是一样么 请大哥指教 我有点迷惑~~~~
[/Quote]
反射消息,子类化的CButton类中处理=BN_CLICKED消息
圣诞老人123 2010-12-14
  • 打赏
  • 举报
回复
但是假如有一个dialog dialog里面有个BTN控件 然后把控件子类化 这样btn的父类是dialog 收到消息肯定是 dialog 然后dialog判断点击在哪 ?子控件是否有处理该消息 如果有就子控件处理没有就是父dialog处理

和上面那种情况是一样么 请大哥指教 我有点迷惑~~~~
ouyh12345 2010-12-14
  • 打赏
  • 举报
回复
拥有焦点的窗口先处理消息,不能处理的再交给父窗口
无论怎么传,都不会到子dialog

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧