+ -
当前位置:首页 → 问答吧 → 窗口嵌入桌面后不重绘的问题如何解决?请赐教!

窗口嵌入桌面后不重绘的问题如何解决?请赐教!

时间:2011-12-14

来源:互联网

在XP系统下用SetParent设置窗口的父窗口为Progman或下面的SHELLDLL_DefView后可以实现窗口嵌入桌面的效果,这本身没问题。
但我发现这个嵌入桌面后的窗口如果本身显示的内容会自己改变(如实现一个嵌入桌面的日历程序),若将这个窗口的一部分移到屏幕之外,再移回来,会发现屏幕外部部分在移回来后不会自动重绘,对日历程序来说的现象是:如果出现跨月情况,就会一部分已更新为当月,移到外面的部分仍显示为上一月的内容。
另外,若将桌面锁定,在锁定过程中窗口发生的改变在解锁后也不会自动重绘;
试过设置各控件和窗口的AutoRedraw属性,试过嵌入的各层次(Progman,下面的DefView,和更下面FolderView),也试过更新窗口的时候InvalideRect整个窗口,但都无果,确实没办法,请高手赐教!

作者: yorksenx   发布时间: 2011-12-14

SENDKEYS"[F5]"

作者: WallesCai   发布时间: 2011-12-15