在对话框中禁用航空淡入效果

我有一个使用MFC创build的模式对话框。 当它出现时,Aero主题会出现一个新的窗口,它会淡入淡出。 在我的特殊情况下,我立即从一个对话框切换到另一个对话框,淡入淡出效果让人分心。 有没有办法可以禁用,所以窗口立即出现,就像Aero被禁用时一样,但是完全不closuresAero?

DwmSetWindowAttribute函数可能会帮助你。 它允许您修改与DWM相关的多个窗口属性。 特别是, DWMWA_TRANSITIONS_FORCEDISABLED属性提到“启用或强制禁用DWM转换”,这可能会诀窍。

 HRESULT hr = S_OK; LPCVOID dwAttribute = (LPCVOID)TRUE; hr = DwmSetWindowAttribute(hWnd, DWMWA_TRANSITIONS_FORCEDISABLED, &dwAttribute, sizeof(dwAttribute)); if (SUCCEEDED(hr)) { // The transitions should have been disabled }