次の方法で共有


Control.Scale メソッド (Single, Single)

コントロールおよび子コントロールのスケールを垂直方向および水平方向に指定した比率で設定します。

Overloads Public Sub Scale( _
   ByVal dx As Single, _   ByVal dy As Single _)
[C#]
public void Scale(floatdx,floatdy);
[C++]
public: void Scale(floatdx,floatdy);
[JScript]
public function Scale(
   dx : float,dy : float);

パラメータ

  • dx
    コントロールのスケールを水平方向に設定する比率。
  • dy
    コントロールのスケールを垂直方向に設定する比率。

解説

このバージョンの Scale メソッドは、 dx パラメータ値および dy パラメータ値を使用して、コントロールの高さと幅を個別に設定します。現在のサイズに比例させてコントロールの高さおよび幅を維持するには、1 つのパラメータをとる Scale メソッドのバージョンを使用します。

ScaleCore メソッドは、 Scale メソッドによって呼び出され、コントロールのスケールを設定します。 ScaleCore メソッドをオーバーライドして、 Scale メソッドのいずれかが呼び出されたときにコードが実行されるようにしてください。

使用例

[Visual Basic, C#, C++] Scale メソッドを使用して、 Form の子コントロールのサイズを変更する例を次に示します。この例では、各コントロールの幅を維持したまま高さを現在のサイズの 1.5 倍にしています。

 
Public Sub ScaleChildControls()
   ' Resize all child controls to 1.5 times their current
   ' height while, maintaining their current width.
   Dim i As Integer
   For i = 0 To (Me.Controls.Count) - 1
      Me.Controls(i).Scale(1F, 1.5F)
   Next i
End Sub 

[C#] 
public void ScaleChildControls()
{
   // Resize all child controls to 1.5 times their current
   // height while, maintaining their current width.
   for(int i = 0; i < this.Controls.Count; i++)
   {
      this.Controls[i].Scale(1.0f, 1.5f);
   }
}

[C++] 
public:
   void ScaleChildControls() {
      // Resize all child controls to 1.5 times their current
      // height while, maintaining their current width.
      for (int i = 0; i < this->Controls->Count; i++) {
         this->Controls->Item[i]->Scale(1.0f, 1.5f);
      }
   }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

Control クラス | Control メンバ | System.Windows.Forms 名前空間 | Control.Scale オーバーロードの一覧 | ScaleCore