C#フォームの位置をデスクトップ座標で変更する

スポンサーリンク

フォームも、System.Windows.Forms.Control からの派生クラスですので、位置は変更できます。ただ、普通に位置を変更しただけでは、タスクバーと干渉してしまうことがあり宜しくありません。タスクバーの位置と大きさは、ユーザーによって十人十色です。

それを解決するためには、SetDesktopLocation メソッドを使ってデスクトップ座標で指定することになります。デスクトップ座標とは、タスクバーを除外した画面の作業領域を指します。DeskTopLocation プロパティから直接変更することもできます。

位置とサイズを画面座標で変更する場合は、こちらをご覧ください。

サンプルコード

以下にサンプルコードを示します。

C# 全般
    // フォームの位置をデスクトップ座標 X=64, Y=32 に変更する
    this.SetDesktopLocation(64, 32);

    // DesktopLocation プロパティを直接変更しても良い
    this.DesktopLocation = new Point(64, 32);

    // 同時にサイズも変更したい場合
    this.SetDesktopBounds(64, 32, 512, 256);

    // DesktopBounds プロパティを直接変更しても良い
    this.DesktopBounds = new Rectangle(64, 32, 512, 256);

関連するリファレンス

準備中です。

スポンサーリンク