CToolBar和CDialogBar不能显示在其他控件上方

stlnkm 2010-03-22 05:10:36
一个对话框,上面部分是一个CStatic控件,下面部分是一个控制条(不是CControlBar),就像播放器那样,我想实现对话框全屏时当鼠标移动到一定区域就显示控制条,当我用CDialog实现控制条时能够正常显示,当我用CToolBar或者CDialogBar(均不可移动的)实现控制条时不能够显示(也就是CDialogBar和CToolBar不能显示在其他控件的上面),在、其中用CToolBar实现时,必须鼠标滑过其上的按钮时按钮才显示出来,用CDialogBar实现时就什么也不显示,但点击时功能可以实现。请问这是为什么?有什么好的解决办法吗?先谢过了!
...全文
168 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
stlnkm 2010-03-23
  • 打赏
  • 举报
回复
结贴,问题已解决。

采用CDialog实现,不过其上的按钮的ID改为0x8000到0xFFFF之间的值。

调试的时候发现,对于ID为0x8000到0xFFFF之间的,若CDialog没有处理,则会发送给其父窗口处理。
stlnkm 2010-03-23
  • 打赏
  • 举报
回复
谢谢!

我用CDialogBar和CToolBar是因为可两个类的按钮消息都会给父窗口一个处理机会,但是CDialog不会,如果把CDialogBar和CToolBar放在一个CDialog里,父窗口(即CDialog的父窗口)也无法处理这些消息。

用CDialogBar和CToolBar时虽然看不见,但点击相应区域也是有反应的。

如果没有好的办法,只好用CDialog,不过要拦截消息。

不用CDialog,哪位大侠还有好的解决办法吗?
奉海 2010-03-22
  • 打赏
  • 举报
回复
无非是想鼠标移动到指定区域动态显示/隐藏部分控件,没必要非得用CDialogBar和CToolBar,这两个玩意用在视图类中多,CDialogBar和CToolBar中的东东放在一个CDialog中,然后显示/隐藏这个Dialog
stlnkm 2010-03-22
  • 打赏
  • 举报
回复
Up~~~~

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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