已知的CPropertysheet bug: 切换焦点导致无响应
2013-08-16 19:46
316 查看
当一个页面内容比较多时我们首先可能考虑用Tab Control,但如果有很多页面内容需要动态加载则用CPropertySheet比较好点~
CPropertySheet有两种不同的显示模式.一种就是向导页面,另一种就是跟Tab Control一样的效果.
假如这样一个简单的CPropertySheet (可以把它看成一个容器,里面装着很多个CPropertyPage)
public CSheet : public CPropertySheet{
//.....
}
CSheet sheet;
sheet.DoModal();
这样使用不管你怎么点来点去都不会有问题.
但如果你是把CPropertySheet放到一个Dialog中去,或者嵌套到另外一个CPropertySheet里.
CSheet* pSheet;
pSheet = new CSheet;
pSheet->Create(this,DS_CONTEXTHELP | DS_SETFONT | WS_CHILD | WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPSIBLINGS);
当你在CPropertySheet中点一下,然后切换到其他地方点下,现点回来时页面就卡住没反应了.而且不是只卡一会而是永远处是Not Responding的状态.这应该算是CPropertySheet的一个已知的bug
参见: http://support.microsoft.com/kb/149501/en-us
就是需要设置下一个属性
pSheet->Create(this,DS_CONTEXTHELP | DS_SETFONT | WS_CHILD | WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPSIBLINGS,
,WS_EX_CONTROLPARENT
);
这样一设置点来点去也不会卡死在那了.不过有些时候这样设置了还不行.还得在
OnInitDialog和PreCreateWindow中再设置下属性
参见: http://bbs.csdn.net/topics/80402533
CPropertySheet有两种不同的显示模式.一种就是向导页面,另一种就是跟Tab Control一样的效果.
假如这样一个简单的CPropertySheet (可以把它看成一个容器,里面装着很多个CPropertyPage)
public CSheet : public CPropertySheet{
//.....
}
CSheet sheet;
sheet.DoModal();
这样使用不管你怎么点来点去都不会有问题.
但如果你是把CPropertySheet放到一个Dialog中去,或者嵌套到另外一个CPropertySheet里.
CSheet* pSheet;
pSheet = new CSheet;
pSheet->Create(this,DS_CONTEXTHELP | DS_SETFONT | WS_CHILD | WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPSIBLINGS);
当你在CPropertySheet中点一下,然后切换到其他地方点下,现点回来时页面就卡住没反应了.而且不是只卡一会而是永远处是Not Responding的状态.这应该算是CPropertySheet的一个已知的bug
参见: http://support.microsoft.com/kb/149501/en-us
就是需要设置下一个属性
pSheet->Create(this,DS_CONTEXTHELP | DS_SETFONT | WS_CHILD | WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPSIBLINGS,
,WS_EX_CONTROLPARENT
);
这样一设置点来点去也不会卡死在那了.不过有些时候这样设置了还不行.还得在
OnInitDialog和PreCreateWindow中再设置下属性
参见: http://bbs.csdn.net/topics/80402533
相关文章推荐
- 已知的CPropertysheet bug: 切换焦点导致无响应
- CPropertySheet失去焦点后程序失去响应
- Android的dialog控制焦点导致其后Activity不响应
- MFC CPropertySheet 多页面切换 实例
- surfaceview在fragment中切换回来后会失去焦点,导致点击事件需要第二次才能生效
- Recyclerview抢占焦点,导致切换fragment后位置错乱
- 大对象导致JVM Crash (Jboss) 分析及解决 - JDK 已知bug
- MFC CPropertySheet 多页面切换 事例
- Viewgroup被子VIew抢焦点,导致Item无法响应点击事件。
- 一个关于响应CPropertySheet “OK”按钮(确认)按钮的方法试验
- 关于nav-tabs 切换导致的bug的经验总结
- CPropertySheet标签页 实现各个CPropertyPage页面之间的切换
- CPropertySheet标签页 实现各个CPropertyPage页面之间的切换
- 修复duilib CEditUI控件和CWebBrowserUI控件中按Tab键无法切换焦点的bug
- 快速切换界面让tableview频繁下拉刷新导致界面上移54px的bug
- 修复duilib CEditUI控件和CWebBrowserUI控件中按Tab键无法切换焦点的bug
- jquery实现的带缩略图的焦点图片切换(自动播放/响应鼠标动作)
- VS2008中切换到视图设计器导致IDE假死无响应
- MFC CPropertySheet 多页面切换 实例