ScrollBar.SmallChange プロパティ
スクロール バーがわずかに移動したときに Value プロパティに対して加算または減算される値を取得または設定します。
Public Property SmallChange As Integer
[C#]
public int SmallChange {get; set;}
[C++]
public: __property int get_SmallChange();public: __property void set_SmallChange(int);
[JScript]
public function get SmallChange() : int;public function set SmallChange(int);
プロパティ値
数値。既定値は、1 です。
例外
例外の種類 | 条件 |
---|---|
ArgumentException | 代入された値が 0 未満です。 |
解説
ユーザーが方向キーの 1 つを押すと、またはスクロール バー ボタンの 1 つをクリックすると、 Value プロパティは SmallChange プロパティに設定されている値に従って変更されます。
SmallChange 値には、 Height (垂直方向のスクロール バーの場合) または Width (水平方向のスクロール バーの場合) の値に対する倍率を設定できます。このように設定すると、スクロール バーのサイズに対するスクロール バーの移動距離の比率が保たれます。
使用例
[Visual Basic, C#, C++] 派生クラス VScrollBar と HScrollBar を使用して、これらのクラスの共通プロパティの一部を設定する例を次に示します。これらの Maximum プロパティは、親である PictureBox に割り当てられている Image の Height および Width と等しくなるように設定されます。 LargeChange プロパティは、ピクチャ ボックスのサイズからスクロール バーの高さまたは幅を引いたサイズに設定されます。 SmallChange プロパティは、 LargeChange プロパティ値を 5 で割った値に設定されます。最後に、両方のスクロール バーの Value プロパティの値が 0 に設定されます。この結果、 Image の左上隅を表示するピクチャ ボックスに、垂直スクロール バーと水平スクロール バーが表示されます。スクロール バーは、イメージの範囲を越えてスクロールすることはありません。 LargeChange が実行された場合、イメージは、ピクチャ ボックスに表示された領域と同じ距離だけ移動します。5 回の SmallChange スクロールで、1 回の LargeChange スクロールと同じ距離だけ移動します。このコードは、 PictureBox 、 HScrollBar 、 VScrollBar 、および Image が Form 上ですべて作成されていることを前提にしています。この例は、 System.Drawing 名前空間への参照が追加されていることも前提にしています。この例を拡張するための追加コードについては、 ScrollBar クラス概要のトピックを参照してください。
Public Sub SetScrollBarValues()
' Set the Maximum, Minimum, LargeChange and SmallChange properties.
Me.vScrollBar1.Minimum = 0
Me.hScrollBar1.Minimum = 0
' If the offset does not make the Maximum less than zero, set its value.
If Me.pictureBox1.Image.Size.Width - pictureBox1.ClientSize.Width > 0 Then
Me.hScrollBar1.Maximum = Me.pictureBox1.Image.Size.Width - _
pictureBox1.ClientSize.Width
End If
' If the VScrollBar is visible, adjust the Maximum of the
' HSCrollBar to account for the width of the VScrollBar.
If Me.vScrollBar1.Visible Then
Me.hScrollBar1.Maximum += Me.vScrollBar1.Width
End If
Me.hScrollBar1.LargeChange = Me.hScrollBar1.Maximum / 10
Me.hScrollBar1.SmallChange = Me.hScrollBar1.Maximum / 20
' Adjust the Maximum value to make the raw Maximum value attainable by user interaction.
Me.hScrollBar1.Maximum += Me.hScrollBar1.LargeChange
' If the offset does not make the Maximum less than zero, set its value.
If Me.pictureBox1.Image.Size.Height - pictureBox1.ClientSize.Height > 0 Then
Me.vScrollBar1.Maximum = Me.pictureBox1.Image.Size.Height - _
pictureBox1.ClientSize.Height
End If
' If the HScrollBar is visible, adjust the Maximum of the
' VSCrollBar to account for the width of the HScrollBar.
If Me.hScrollBar1.Visible Then
Me.vScrollBar1.Maximum += Me.hScrollBar1.Height
End If
Me.vScrollBar1.LargeChange = Me.vScrollBar1.Maximum / 10
Me.vScrollBar1.SmallChange = Me.vScrollBar1.Maximum / 20
' Adjust the Maximum value to make the raw Maximum value attainable by user interaction.
Me.vScrollBar1.Maximum += Me.vScrollBar1.LargeChange
End Sub
[C#]
public void SetScrollBarValues()
{
// Set the Maximum, Minimum, LargeChange and SmallChange properties.
this.vScrollBar1.Minimum = 0;
this.hScrollBar1.Minimum = 0;
// If the offset does not make the Maximum less than zero, set its value.
if( (this.pictureBox1.Image.Size.Width - pictureBox1.ClientSize.Width) > 0)
{
this.hScrollBar1.Maximum = this.pictureBox1.Image.Size.Width - pictureBox1.ClientSize.Width;
}
/* If the VScrollBar is visible, adjust the Maximum of the
HSCrollBar to account for the width of the VScrollBar. */
if(this.vScrollBar1.Visible)
{
this.hScrollBar1.Maximum += this.vScrollBar1.Width;
}
this.hScrollBar1.LargeChange = this.hScrollBar1.Maximum / 10;
this.hScrollBar1.SmallChange = this.hScrollBar1.Maximum / 20;
// Adjust the Maximum value to make the raw Maximum value attainable by user interaction.
this.hScrollBar1.Maximum += this.hScrollBar1.LargeChange;
// If the offset does not make the Maximum less than zero, set its value.
if( (this.pictureBox1.Image.Size.Height - pictureBox1.ClientSize.Height) > 0)
{
this.vScrollBar1.Maximum = this.pictureBox1.Image.Size.Height - pictureBox1.ClientSize.Height;
}
/* If the HScrollBar is visible, adjust the Maximum of the
VSCrollBar to account for the width of the HScrollBar.*/
if(this.hScrollBar1.Visible)
{
this.vScrollBar1.Maximum += this.hScrollBar1.Height;
}
this.vScrollBar1.LargeChange = this.vScrollBar1.Maximum / 10;
this.vScrollBar1.SmallChange = this.vScrollBar1.Maximum / 20;
// Adjust the Maximum value to make the raw Maximum value attainable by user interaction.
this.vScrollBar1.Maximum += this.vScrollBar1.LargeChange;
}
[C++]
public:
void SetScrollBarValues()
{
// Set the Maximum, Minimum, LargeChange and SmallChange properties.
this->vScrollBar1->Minimum = 0;
this->hScrollBar1->Minimum = 0;
// If the offset does not make the Maximum less than zero, set its value.
if( (this->pictureBox1->Image->Size.Width - pictureBox1->ClientSize.Width) > 0)
{
this->hScrollBar1->Maximum = this->pictureBox1->Image->Size.Width - pictureBox1->ClientSize.Width;
}
/* If the VScrollBar is visible, adjust the Maximum of the
HSCrollBar to account for the width of the VScrollBar. */
if(this->vScrollBar1->Visible)
{
this->hScrollBar1->Maximum += this->vScrollBar1->Width;
}
this->hScrollBar1->LargeChange = this->hScrollBar1->Maximum / 10;
this->hScrollBar1->SmallChange = this->hScrollBar1->Maximum / 20;
// Adjust the Maximum value to make the raw Maximum value attainable by user interaction.
this->hScrollBar1->Maximum += this->hScrollBar1->LargeChange;
// If the offset does not make the Maximum less than zero, set its value.
if( (this->pictureBox1->Image->Size.Height - pictureBox1->ClientSize.Height) > 0)
{
this->vScrollBar1->Maximum = this->pictureBox1->Image->Size.Height - pictureBox1->ClientSize.Height;
}
/* If the HScrollBar is visible, adjust the Maximum of the
VSCrollBar to account for the width of the HScrollBar.*/
if(this->hScrollBar1->Visible)
{
this->vScrollBar1->Maximum += this->hScrollBar1->Height;
}
this->vScrollBar1->LargeChange = this->vScrollBar1->Maximum / 10;
this->vScrollBar1->SmallChange = this->vScrollBar1->Maximum / 20;
// Adjust the Maximum value to make the raw Maximum value attainable by user interaction.
this->vScrollBar1->Maximum += this->vScrollBar1->LargeChange;
}
[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 ファミリ, .NET Compact Framework - Windows CE .NET
参照
ScrollBar クラス | ScrollBar メンバ | System.Windows.Forms 名前空間 | LargeChange