Share via


方法 : Windows フォームの画面上の位置を設定する

コンピューター画面上のフォームの表示位置を指定するには、Location プロパティに値を入力します。 このプロパティに値を入力して、フォームの左上隅の位置をピクセル単位で指定します。 また、StartPosition プロパティを設定して、表示領域の境界線も指定する必要があります。

注意

通常、表示サイズおよび解像度は、ユーザーのシステムによって異なります。 また、複数のモニターが接続されたシステムでは、表示領域の境界線を認識するときに問題が生じることがあります。 この 2 つの状況では、Location プロパティの設定にかかわらず、フォームが予想外の位置に表示されることがあります。 このため、Windows アプリケーションの StartPosition プロパティは、既定で WindowsDefaultLocation に設定されています。この既定値がプロパティに設定されている場合、オペレーティング システムの起動時に、使用中のハードウェアに基づいて最適なフォームの位置が計算されます。 また、コード内で StartPosition プロパティを [Center] に設定してから、フォームの位置を変更することもできます。 詳細については、後述の「プログラムでフォームの位置を設定するには」を参照してください。

[プロパティ] ウィンドウを使用して、フォームの位置を設定するには

  1. [プロパティ] ウィンドウのドロップダウン リストで、フォームを選択します。 コントロールの StartPosition プロパティを Manual に設定します。

  2. Location プロパティの値をコンマで区切って入力し、フォームの位置を設定します。最初の数値 (X) は、表示領域の左端からフォームまでの距離、2 番目の数値 (Y) は、表示領域の上端からフォームまでの距離を表します。

    注意

    Location プロパティを展開し、X プロパティ値と Y プロパティ値をそれぞれ入力します。

プログラムでフォームの位置を設定するには

  • 実行時にフォームの位置を定義するには、次の例のように、フォームの 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;
    

プログラムでインクリメントして、フォームの位置を変更するには

  • フォームの位置の X 座標を大きくするには、Left プロパティを使用します。 フォームの X 座標を 200 ピクセル大きくするコード例は、次のとおりです。

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

    注意

    Windows フォームの X 座標および Y 座標を同時に設定するには、Location プロパティを使用します。 個々に設定するには、フォームの Left (X) または Top (Y) の各プロパティを使用します。 フォームの位置を表す Point に含まれているのは、フォームの座標のコピーであるため、X 座標および Y 座標を暗黙的に設定することはできません。

    Location プロパティの代わりに DesktopLocation プロパティを使用して、フォームの位置を設定することもできます。 DesktopLocation プロパティでは、タスクバーからの相対距離でフォームの位置を設定します。この方法は、タスクバーがモニターの上端または左端にドッキングしている場合に便利です。 タスクバーが上端または左端にドッキングしている場合は、デスクトップの (0,0) 座標が不定義の状態になります。 DesktopLocation プロパティが (0, 0) に設定されているフォームは、常に主要モニターの左上隅に表示されますが、タスクバーの後方に隠れることはありません。

プログラムで DesktopLocation プロパティを設定するには

  • 他のプロパティと同様に、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 フォームでのコントロールの配置