MFC 对话框添加滚动条以后工具栏也跟着滚动,如何解决? 15
1个回答
展开全部
对话框滚动会影响客户区的任何控件,包括工具栏。
而标准MFC对话框,只能将工具栏放在客户区,因此这个问题没有简单的解决办法,自己在这个基础上去解决问题,非常困难。
比较省事儿的办法,就是重新创建一个工程,做成单文档CFormView模式,这样Form里面的滚动,只影响View客户区内容,不会影响在框架区域的工具条、状态条等东西了。
补充一下,对话框模式还有另外一个办法,就是在控件不多或者需要影响的控件不多的情况下,自己响应滚动条的OnVScroll和OnHScroll事件,自己处理需要滚动的东西。这样的滚动条是伪滚动的,经常用于对话框单一控件响应滚动事件(并将滚动条只放在这一个控件边上)。
而标准MFC对话框,只能将工具栏放在客户区,因此这个问题没有简单的解决办法,自己在这个基础上去解决问题,非常困难。
比较省事儿的办法,就是重新创建一个工程,做成单文档CFormView模式,这样Form里面的滚动,只影响View客户区内容,不会影响在框架区域的工具条、状态条等东西了。
补充一下,对话框模式还有另外一个办法,就是在控件不多或者需要影响的控件不多的情况下,自己响应滚动条的OnVScroll和OnHScroll事件,自己处理需要滚动的东西。这样的滚动条是伪滚动的,经常用于对话框单一控件响应滚动事件(并将滚动条只放在这一个控件边上)。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询