共用方式為


HOW TO:設定 Windows Form 的畫面位置

您可以在 Location 屬性中輸入值,以指定表單在電腦螢幕上的顯示位置。 這將指定表單左上角的像素位置。 此外,您還需要設定 StartPosition 屬性來指出顯示區域的界限。

注意事項注意事項

請記得螢幕大小和解析度通常是因使用者的系統而異。 除此之外,連接多個監視器的系統可能不容易辨認顯示區域的界線。 所以無論 Location 屬性設定為何,以上兩種情況常會導致表單位置產生無法預期的變更。 因此,Windows 應用程式中 StartPosition 屬性的預設值為 WindowsDefaultLocation,這讓作業系統能夠根據目前硬體來計算表單啟動時的最佳位置。 另外一種方式是先將 StartPosition 屬性設定為 [Center],然後在程式碼中變更表單位置。 如需詳細資訊,請參閱以下「若要利用程式置放表單」段落。

若要使用屬性視窗置放表單

  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 座標。 以下範例將表單的 X 座標以 200 個像素為單位進行調整:

    Form1.Left += 200
    
    Form1.Left += 200;
    
    Form1.set_Left(Form1.get_Left() + 200);
    
    Form1->Left += 200;
    
    注意事項注意事項

    使用 Location 屬性來同步設定 Windows Form 的 X 及 Y 位置。 若要個別進行設定,請使用表單的 Left (X) 或 Top (Y) 屬性。 請勿隱含設定 Point 結構 (表示表單位置) 的 X 及 Y 座標,因為這包含了一組表單座標。

    除了使用 Location 屬性以外,您也可以使用 DesktopLocation 屬性來設定表單的位置。 這項屬性設定表單與工作列的相對位置,而相當適用於工作列停駐在使用者監視器上方或左方的情況。 用這種方式停駐工作列會遮住桌面座標 (0,0)。 將 DesktopLocation 屬性設定為 (0, 0) 的表單都會出現在主監視器的左上角,但不在工作列之後。

若要利用程式設定 Desktop Location 屬性

  • 設定 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 Form 概觀

其他資源

建立新的 Windows Form

排列 Windows Form 上的控制項