Tag: user32

禁用Excel用户窗体淡入淡出animation

在Excel 2007(和2010)中使用VBA,在显示和隐藏UserForm时,是否可以禁用标准淡入和淡出animation。 特别是对于我正在创build的用户界面来说,淡出效果太慢了。 也许user32函数AnimateWindow有一个可以作废的设置,但是我还没有弄清楚。 编辑 :这是一个美学目标; 没有性能问题。 用Me.Hide淡出,由操作系统处理,需要大约1/2秒,我想知道它是否可以被重写是瞬时的。

当MainWindowHandle为0时,将窗口置于前景

如果MainWindowHandle不为0,以下代码将窗口置于前台。 我怎样才能把一个窗口到MainWindowHandle = 0的前面? 这是为Microsoft Excel – 兼容性检查器窗口显示一个GUI,但没有任务栏中的图标,并具有MainWindowHandle = 0。 我没有其他Excel运行的实例。 Add-Type @" using System; using System.Runtime.InteropServices; public class Tricks { [DllImport("user32.dll")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool SetForegroundWindow(IntPtr hWnd); } "@ $excel = (Get-Process | Where-Object { $_.ProcessName -eq 'EXCEL' }).MainWindowHandle [void] [Tricks]::SetForegroundWindow($excel) 在Windows任务pipe理器中,我可以右键单击“Microsoft Excel – 兼容性检查器”,然后单击“带到前面”,并工作。 如何在Powershell中模仿这个function?