我想写一个脚本来组织我目前在我的屏幕上打开的窗口。
例如:移动所有的浏览器,监视器1和其他所有的监视器2例如:使显示器1上的4个最大化的窗口在屏幕上占用相同大小的象限等。
我认为VBScript会对此有好处? 我将在Win7环境中使用哪些对象?
这在VBScript中是不可能的,因为它不提供对用于窗口管理的Windows API的访问。
AutoIt似乎是一个更好的工具。 看看下面的函数和宏:
WinMove
– 移动窗口 _WinAPI_GetSystemMetrics
(80)
– 获取监视器的数量 @DesktopWidth
和@DesktopHeight
– 主监视器像素大小 _WinAPI_GetSystemMetrics(78)
和_WinAPI_GetSystemMetrics(79)
– 完整的桌面宽度和高度 如果监视器尺寸不同,则可以使用WMI类Win32_DesktopMonitor
及其ScreenWidth
和ScreenHeigth
属性来获取单独的监视器尺寸。
我不确定如果我会说VBS会对此有好处,我认为我更喜欢C ++,因为它会涉及Windows API调用,我认为这在C ++中更容易,但这取决于您的技能和VBS可能会很好。
我会看的API调用将是EnumWindows或FindWindow找到你想要移动的窗口,然后SetWindowPos移动它们。
我认为,如果你想把它们移动到辅助监视器上,你应该可以把它移动到主监视器以外的位置(例如,如果辅助监视器在左边扩展,可能是负的位置)。 要做到这一点,你需要能够找到当前的解决方案,我认为你可以从WMI类Win32_VideoController获得 。