将表单移动到工作区域的右侧

时间:2014-09-17 21:52:40

标签: .net vb.net vb6

我想将表单移动到最右边的显示器和工作区的最右边。

使用VB6,我使用vbAccelerator.com的代码,如下所示:

    Dim mThis As cMonitor = _cM.MonitorForWindow(Form.Hwnd)

    Dim lMaxRight As Integer
    If Not (mThis Is Nothing) Then
        With Form
            lMaxRight = mThis.WorkRight
            .Left = ((mThis.WorkRight) * -(.Width))
        End With
    Else
        Form.Left = Screen.PrimaryScreen.Bounds.Width - Form.Width
    End If

...但是,我认为这不适用于框架。

我想问一下,是否有一种简单的方法可以对Microsoft .Net Framework做同样的事情。

谢谢!

2 个答案:

答案 0 :(得分:0)

此代码会将您的表单定位到vb.Net

的右上角
 Me.Location = New Point(Screen.PrimaryScreen.WorkingArea.Width - Me.Width, 0)

答案 1 :(得分:0)

查看Screen.WorkingArea属性。请注意,这仅适用于屏幕布局为矩形布局(无死区)和水平布局的情况。

更好的方法是枚举屏幕(Screen.AllScreens)并选择一个看起来最好的屏幕(最右边的边框?如果有多个屏幕则选择顶部?)然后移动您的表单以适应该屏幕&#39边界。