[VC2005] フォームを画面の中央に配置する方法
◆概要
この資料は、Microsoft(R) Visual C#で フォームを画面の中央に配置する方法について記述しています。
◆StartPositionプロパティを設定する方法
Visual C# のフォームのデザイン時にプロパティ・ウィンドウでStartPositionプロパティをCenterScreenに設定することによって、フォームを画面の中央に配置することができます。
プログラムで設定するときは、フォームのStartPositionプロパティにFormStartPosition.CenterScreenを設定します。ただし、Form_Loadイベントハンドラではダメで、フォームのコンストラクタ内やフォームのインスタンス作成直後に設定する必要があります。
public Form1() { InitializeComponent(); // フォームのコンストラクタ内で設定 this.StartPosition = FormStartPosition.CenterScreen; } /// Form2を呼び出すとき /// フォームのインスタンス作成直後に設定 private void button1_Click(object sender, EventArgs e) { using (Form2 _frm2 = new Form2()) { _frm2.StartPosition = FormStartPosition.CenterScreen; _frm2.ShowDialog(this); } }◆フォームのLeftプロパティ、Topプロパティを設定する方法
フォームのLeftプロパティ、Topプロパティをフォームのロードイベントで次のように設定します。
//フォームを画面の中央に配置 this.Left = (Screen.PrimaryScreen.Bounds.Width - this.Width) / 2; this.Top = (Screen.PrimaryScreen.Bounds.Height - this.Height) / 2; |
◆SetBoundsメッソッドで設定する方法
フォームのSetBoundsメッソッドを使って次のようにすることができます。
//フォームを画面の中央に配置 this.SetBounds((Screen.PrimaryScreen.Bounds.Width - this.Width) / 2, (Screen.PrimaryScreen.Bounds.Height- this.Height) / 2, this.Width, this.Height); |