我有一个标准的Windows Tab控件,使用WS_EX_COMPOSITED扩展窗口样式创建,以处理调整选项卡大小时的闪烁,但其中一个Tab子窗口是ListView(LVS_OWNERDRAWFIXED),设置为LVS_REPORT,这个组合似乎吃了即使ListView中没有行,CPU占用率也是如此,因此选项卡中的空ListView根本不执行任何操作有48%的CPU使用率,更改ListView视图或删除WS_EX_COMPOSITED修复CPU问题但是我真的需要LVS_REPORT所以我该怎么做,如果我可以使用带有ListView子窗口的WS_EX_COMPOSITED或者获得与WS_EX_COMPOSITED相同的结果,因为它可以阻止凌乱的闪烁。
答案 0 :(得分:2)
调整大小时只需要WS_EX_COMPOSITED
。因此,权宜之计的解决方案是仅在调整大小时包含它。聆听WM_ENTERSIZEMOVE
,当您收到时,请加入WS_EX_COMPOSITED
。收到WM_EXITSIZEMOVE
后,请删除WS_EX_COMPOSITED
。