3

任意の解像度で画面の中心を見つける方法は?

プログラムを画面の中央 -10 (y 軸) に表示したい。

(私のプログラムは最大サイズではありません)

WinForm で C# を使用しています。

4

5 に答える 5

4

StartPositionメインのWinFormのプロパティをに設定できますCenterScreen。次に、この画面の中心に対して別の位置に表示したい場合は、TopおよびLeftプロパティを試して、必要なピクセル数を加算または減算できます。

于 2012-06-25T08:43:28.397 に答える
3

ただし、@ DarinDimitrovの提案に従います...画面の境界を知る必要がある場合:

System.Windows.Forms.Screen.PrimaryScreen.Bounds

または、タスク バーを考慮して:

System.Windows.Forms.Screen.PrimaryScreen.WorkingArea

...またはいくつかのバリアント

于 2012-06-25T08:46:41.493 に答える
0

これはあなたを助けるかもしれません

private void center_Load(object sender, System.EventArgs e)
{
// Position the Form on The screen taking in account
the resolution
//
Rectangle screenRect = Screen.GetBounds(Bounds);
// get the Screen Boundy
ClientSize = new Size((int)(screenRect.Width/2),

(int)(screenRect.Height/2)); // set the size of the form
Location = new
Point(screenRect.Width/2-ClientSize.Width/2,

screenRect.Height/2-ClientSize.Height/2); // Center the Location of
the form.
}
于 2012-06-25T08:45:14.310 に答える
0

これを試して:

new Point((this.Width + this.Location.X) / 2 - popupControlContainer1.Width / 2,
          (this.Height + this.Location.Y) / 2 - popupControlContainer1.Height / 2)

それが役に立てば幸い

于 2013-03-26T13:56:44.933 に答える