如何:设置 Windows 窗体的屏幕位置

更新:2007 年 11 月

通过在 Location 属性中输入值,可指定窗体在计算机屏幕上的显示位置。它以像素为单位指定窗体左上角的位置。此外,您还需要设置 StartPosition 属性,以指示显示区域的边界。

说明:

请记住,屏幕大小及分辨率经常因用户系统的不同而变化。另外,连有多个监视器的系统在识别显示区域的边界时可能会有问题。无论如何设置 Location 属性,这两种情况通常导致无法预知窗体位置的变化。因此,Windows 应用程序的 StartPosition 属性的默认设置是 WindowsDefaultLocation,该设置可使操作系统在启动时根据当前硬件计算窗体的最佳位置。另一种选择是将 StartPosition 属性设置为“居中”,然后在代码中更改窗体的位置。有关更多信息,请参见下面的“以编程方式定位窗体”。

使用“属性”窗口定位窗体

  1. 在“属性”窗口中,从下拉菜单选择窗体。将窗体的 StartPosition 属性设置为 Manual

  2. Location 属性键入值(以逗号分隔)来定位该窗体,其中第一个数字 (X) 表示到显示区域左边界的距离,第二个数字 (Y) 表示到显示区域上边界的距离。

    说明:

    展开 Location 属性,分别输入 XY 属性值。

以编程方式定位窗体

  • 通过将窗体的 Location 属性设置为 Point 来定义窗体在运行时的位置,如以下示例所示:

    Form1.Location = New Point(100, 100)
    
    Form1.Location = new Point(100, 100);
    
    Form1.set_Location(new Point(100, 100));
    
    Form1->Location = Point(100, 100);
    

    - 或 -

    使用 Left 属性(用于 X 坐标)和 Top 属性(用于 Y 坐标)更改窗体位置的 X 坐标或 Y 坐标。下面的示例将窗体的 X 坐标调整为 300 个像素点:

    Form1.Left = 300
    
    Form1.Left = 300;
    
    Form1.set_Left(300);
    
    Form1->Left = 300;
    

以编程方式按增量更改窗体位置

  • 使用 Left 属性增加窗体的 X 坐标。下面的示例以 200 个像素的增量调整窗体的 X 坐标:

    Form1.Left += 200
    
    Form1.Left += 200;
    
    Form1.set_Left(Form1.get_Left() + 200);
    
    Form1->Left += 200;
    
    说明:

    使用 Location 属性同时设置 Windows 窗体的 X 和 Y 坐标位置。若要对它们单独进行设置,请使用该窗体的 Left (X) 或 Top (Y) 属性。由于表示窗体位置的 Point 结构包含该窗体坐标的副本,因此不要试图隐式设置该结构的 X 坐标和 Y 坐标。

    可使用 DesktopLocation 属性来代替 Location 属性设置窗体的位置。此属性设置窗体相对于任务栏的位置,如果任务栏已停靠到用户监视器的顶部或左侧,则此属性很有用。以此方式停靠任务栏将遮盖桌面坐标 (0,0)。将 DesktopLocation 属性设置为 (0, 0) 的窗体始终出现在主监视器的左上角,但不在任务栏的后面。

以编程方式设置“桌面位置”属性

  • 与设置任何其他属性一样设置 DesktopLocation 属性。下面的示例为 Accounts 窗体建立新位置。

    Dim frmAccounts as new Form()
    Set FrmAccounts.DesktopLocation = new Point(100,100)
    
    Form frmAccounts= new Form();
    frmAccounts.DesktopLocation = new Point(100,100);
    
    Form frmAccounts =  new Form();
    frmAccounts.set_DesktopLocation(new Point(100, 100));
    
    Form^ frmAccounts= gcnew Form();
    frmAccounts->DesktopLocation = Point(100,100);
    
    说明:

    DesktopLocation 属性并不出现在“属性”窗口中,而只能在代码中进行设置。

请参见

参考

Windows 窗体概述

其他资源

创建新的 Windows 窗体

排列 Windows 窗体上的控件