Qt::WA_StaticContents这个属性告诉Qt,当重新改变窗口部件的大小时,这个窗口部件的内容并没有发生变化,而且它的内容仍旧保留从窗口部件左上角开始的特性。当重新定义窗口部件的大小时,通过使用这个信息,Qt就可以避免对已经显示区域的重新绘制。图5.5图示了这一情形。
通常情况下,当重新定义一个窗口部件的大小时,Qt会为窗口部件的整个可见区域生成一个绘制事件。但是如果该窗口部件在创建时使用了Qt::WA_StaticContens属性,那么绘制事件的区域就会被严格限定在之前没有被显示的像素部分上。这也就意味着,如果重新把窗口部件改变为比原来还要小的尺寸,那么就根本不会产生任何绘制事件。 |