用win32 sdk创建了tab控件,并创建若干个对话框做为tab的页面,上面有bitmap,在tab改变选项时出现闪烁

解决方案 »

  1.   

    对话框指定WS_CLIPCHILDREN 风格
      

  2.   

    你需要去除TAB控件的CS_HREDRAW和CS_VREDRAW类型,否则调整尺寸会引起窗口闪烁LONG lc = GetClassLong(hWndTab,GCL_STYLE);
    lc &= ~(CS_HREDRAW|CS_VREDRAW);
    SetClassLong(hWndTab,GCL_STYLE,lc);如果还闪,再使用类似上面的代码加上WS_CLIPCHILDREN|WS_CLIPSIBLINGS窗口类型(改用SetWindowLong)。
      

  3.   

    我觉得这个问题可以尝试这么解决,
    用mfc建一个工程,然后用控件按照sdk的界面布局搞一遍,如果mfc下面没有闪烁,则sdk参照下mfc看看是哪的问题