F#开源WindowTabs错误修复窗口位置

问题描述

开源WindowTabs是一个受欢迎的项目, 似乎有叉子95。

我想修复错误

MultiMonitor(Multidisplay)环境

[1][2]
 [3]

选项卡窗口移动和相同的选项卡组窗口应该隐藏但不隐藏移动监视器[3]。

我知道代码的位置。 但是,我不知道如何修改它。

https://github.com/standard-software/WindowTabs/blob/master/WtProgram/Shared/Win32.fs#L503

    member this.hideOffScreen (size:Sz option) =
        let corners = Mon.all.map <| fun monitor -> monitor.workRect.BR.sub(monitor.workRect.location)
        let corner = corners.fold (Pt()) <| fun maxCorner corner ->
            if maxCorner.x < corner.x then maxCorner else corner

        let corner = corners.fold corner <| fun maxCorner corner ->
            if  maxCorner.x = corner.x && 
                maxCorner.y < corner.y then
                maxCorner
            else
                corner
        let corner = Pt(corner.x-1,corner.y-1)
        this.setPlacement({
            this.placement with
            showCmd = ShowWindowCommands.SW_SHOWNOACTIVATE
            rcnormalPosition = Rect(
                corner,if size.IsSome then size.Value else this.placement.rcnormalPosition.size
            )
        }) 

我认为角落是显示器[1]右下角的位置。

我想做的角落是workRect区域的右下角。 然后,窗口隐藏功能就可以正常工作了。

例如:let corner = Pt(corner.x + 2000,corner.y + 2000) 但这不酷

我不能使用F#调试输出,因为它根本不起作用,但是很高兴有人能帮助您。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)