当调用WM_MoveWindow()时,会出发WM_PAINT消息,当移动像BUTTON之类的控件时,会调用_Pain(),这个函数总是先擦除BUTTON控件内的字体,之后再重新写入字体。如果BackColor设置为黑色的话,这样每次处理就会这样,先将控件上的背景设置为黑色,再在控件内写入字体。重复调用,就会是 黑->字体->黑->字体。。。。。。,这就闪烁了。
不知道不擦除,直接覆盖会不会闪烁,晚上回去试一下。
当调用WM_MoveWindow()时,会出发WM_PAINT消息,当移动像BUTTON之类的控件时,会调用_Pain(),这个函数总是先擦除BUTTON控件内的字体,之后再重新写入字体。如果BackColor设置为黑色的话,这样每次处理就会这样,先将控件上的背景设置为黑色,再在控件内写入字体。重复调用,就会是 黑->字体->黑->字体。。。。。。,这就闪烁了。
不知道不擦除,直接覆盖会不会闪烁,晚上回去试一下。
举报