zoukankan      html  css  js  c++  java
  • 已知的CPropertysheet bug: 切换焦点导致无响应

    当一个页面内容比较多时我们首先可能考虑用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

  • 相关阅读:
    新浪SAE搭建项目
    PHP ReflectionClass
    自定义时间函数
    mysql 日期函数
    jquery之商城菜单
    jquery之行自加自减
    前端之拖动面板
    商城轮播图
    js之返回网页顶部
    js之搜索框
  • 原文地址:https://www.cnblogs.com/riskyer/p/3263252.html
Copyright © 2011-2022 走看看