处理 Windows 7 Aero 主题上的卸载表单[重复]

Posted

技术标签:

【中文标题】处理 Windows 7 Aero 主题上的卸载表单[重复]【英文标题】:Deal with unloading forms on Windows 7 Aero theme [duplicate] 【发布时间】:2012-10-09 13:09:17 【问题描述】:

可能重复:Disable aero fade-in effect on dialog

当用户在表单上按 OK 时,我正在尝试截取应用程序的屏幕截图。当用户按下 OK 时,表单应该被卸载,然后截取 MDI 表单的屏幕截图。

但是,对于 Windows 7 Aero 主题,表单不会立即消失,而是会淡出。所以截图的代码发生在表单完全消失之前。

有没有办法让代码停止,直到表单 100% 消失。我曾想过睡觉,但希望有更优雅的东西。

【问题讨论】:

相关问题:Disable aero fade-in effect on dialog 【参考方案1】:

您可以使用DWMWA_TRANSITIONS_FORCEDISABLED 属性调用DwmSetWindowAttribute()。这应该让它立即消失。

在我的情况下,我在显示消息框后截屏,所以我不得不退回到 200 毫秒 Sleep()

【讨论】:

最近关于旧新事物 -- blogs.msdn.com/b/oldnewthing/archive/2012/10/03/10355307.aspx @wqw 啊哈,我在那儿看到的!谢谢:)

以上是关于处理 Windows 7 Aero 主题上的卸载表单[重复]的主要内容,如果未能解决你的问题,请参考以下文章

[WPF自定义控件库]以Button为例谈谈如何模仿Aero2主题

不同(平台)上的 MonthCalendar 宽度,更正:主题(XP 与 Aero 主题)

带有 Windows Aero 主题的 QWebEngineView 比例错误

旧版 MFC 应用程序在具有 Aero 主题的 windows7 操作系统上无法正常运行,但在经典主题下表现良好

使WPF程序应用预置的控件风格, 如Aero, Luna, Royale, Classic等

PresentationFramework Aero、Aero2 或 AeroLite