0

我有一个无边框表单,上面有一个面板,用于移动和拖动表单。这在 Windows 7 中没问题,但我发现它显示窗口轨迹(如鼠标轨迹、阴影/复制/表单痕迹),每当我移动窗体时,它就会随之移动。我尝试将视觉效果设置为“调整以获得最佳外观”,认为它可以解决这个问题,但无济于事。希望任何人都可以给我看灯..谢谢

附加信息:计算机的显示器在 Intel GMA 3100 上运行,并且可以与其他软件一起运行。我怀疑有一些设置会导致这种情况,我很确定这不是因为显卡。谢谢 !

线索?我还尝试在 WindowsXP 中找到“启用/禁用桌面组合”设置以找到线索,但似乎它仅在 Vista 和 7 中可用,在 XP 中不可用。因为我认为这是XP中导致痕迹的罪魁祸首。如果在 Windows 7 中禁用此设置,我的表单的行为方式与 XP 相同。要把它放回去,我必须启用它。

4

1 回答 1

1

我还尝试在 WindowsXP 中找到“启用/禁用桌面组合”设置

Windows XP 是问题的根源。该问题不在您的代码中,而是由拥有您重叠的窗口的程序中的代码引起的。当您移动窗口时,该程序必须渲染您显示的像素。如果这样做很慢,那么您会在一段时间内看到未绘制的像素,以白色轨迹可见。轨迹的长度取决于您移动窗口的速度以及程序响应的速度。您的视频适配器也无济于事,它的速度与您所能获得的一样慢。

在具有 Aero 桌面主题的 Vista 中提供了一个基本修复程序。它不再让程序直接渲染到屏幕上,输出到内存位图。然后从这些位图合成屏幕视图。具有显着优势的是,您通过移动窗口显示的那些像素立即可用,并且重叠的窗口根本不需要重新绘制。该功能称为“桌面组合”。在 Windows 7 上默认启用。

除了让那只老小狗退休之外,你无能为力。

于 2013-05-14T09:10:57.077 回答