コントロール設置の基本、コントロールの場所とサイズを変更するにはSizeプロパティ・Locationプロパティを使用します。
Sizeプロパティ
Sizeプロパティは、Size構造体で設定・取得します。
サイズを設定する
例えば、横100px、縦50pxのサイズにするにはこのようなコードを書きます。
button.Size = new Size(100, 50);
縦と横を同時に設定するにはこのようにします。
横だけ、または縦だけ設定する場合はこのような書き方もできます。
button1.Width = 100; button1.Height = 50;
ただし、このような書き方はできません。
// ダメな例 button1.Size.Width = 100; button1.Size.Height = 50;
このように、Sizeプロパティを通じてどちらか片方だけ設定するという方法はできません。そういう仕様なのです。
サイズを取得する
取得する場合は数値だけ取得する方法もあります。
// 横の長さを取得する int w = button1.Size.Width; 又は int w = button1.Width; // 縦の長さを取得する int h = button1.Size.Height; 又は int h = button1.Height; // サイズを構造体で取得する Size s = button.Size;
このようにすれば取得することもできます。
なぜ、設定の時は数値だけで設定できないのかといいますと、そういう仕様だからです。
Locationプロパティ
今度はコントロールの位置を取得する方法です。
まずプログラムでの位置の指定方法の注意点なのですが、数学とかのああx,y座標とhじゃ考え方が少し違います。
数学の場合は、左下から上・右に向かってプラスでしたね。
ただ、プログラムでは左上から下・右に向かってプラスです。この辺り注意してください。
位置を設定する
サイズの時とにた感じですが、Point構造体を使います。
(x, y)を(100, 50)に設定するにはこのようにします。
button1.Location= new Point(100, 50);
こちらはサイズと違って、どちらか片方だけを設定するということはできません。
なので面倒ですが、例えばyを100にするというコードを書きたければこのように書きます。
button1.Location= new Point(button1.Location.X, 100);
位置を取得する
感覚はサイズと同じです。ただし、こちらは毎回Locationプロパティを通じて取得しましょう。
// 位置を構造体で取得する Point pos = button1.Location; // X座標を取得する int x = button1.Location.X; // Y座標を取得する int y = button1.Location.Y;
このようにして取得することができます。