web-dev-qa-db-ja.com

フォームの表示領域から見出しと境界線を除いたサイズを設定するにはどうすればよいですか?

見出しと境界線を除いて、フォームを正確に300 * 300に設定したいと思います。

Sizeプロパティを使用すると、これらの値が含まれます。

それを行う方法はありますか?

19
Mocco

次の2つのオプションがあります。

  • フォームから見出しと境界線を削除するには、フォームのFormBorderStyleプロパティを無効にします。

  • 次のように、ClientSizeプロパティを使用してフォームの内部を設定します。

    this.ClientSize = new Size(300, 300);
    
31
Yetti

境界線とタイトルバーのサイズだけを考慮に入れてみませんか?

int BorderWidth = (this.Width – this.ClientSize.Width) /2;
int TitlebarHeight = this.Height – this.ClientSize.Height – 2 * BorderWidth;

私は式を見つけました ここ

8
dandan78

デザイナーツールで適切なサイズを設定するための回避策があります。1。FormBorderSizeを「なし」に設定します。 2.希望のサイズを設定します(例:「300; 300」)。 3. FormBorderSizeを優先境界線に設定します(追加の必要なスペースがSizeプロパティに自動的に追加されます)。

5
Marek Kijo