Управление степенью прокрутки в полосе прокрутки
В следующем примере демонстрируются свойства LargeChange и SmallChange при использовании с автономной полосой Прокрутки. Пользователь может присваивать свойствам LargeChange и SmallChange любые целочисленные значения в диапазоне от 0 до 100. В этом примере также используется свойство TextBox.MaxLength для ограничения количества символов, введенных в элементах управления TextBox для значений LargeChange и SmallChange .
Чтобы использовать этот пример, скопируйте пример кода в редактор скриптов формы. Чтобы запустить код, необходимо открыть форму, чтобы активировать событие Open . Убедитесь, что эта форма содержит:
Метка с именем Label1
Объект TextBox с именем TextBox1, привязанный к настраиваемой строке с именем ScrollBarSmallChange.
Метка с именем Label2
Объект TextBox с именем TextBox2, привязанный к настраиваемой строке с именем ScrollBarLargeChange.
ScrollBar с именем ScrollBar1, привязанный к настраиваемой строке с именем ScrollBarValue.
Элемент Label с именем Label3.
Sub Item_Open()
Set Label1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("Label1")
Set ScrollBar1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("ScrollBar1")
Set TextBox1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("TextBox1")
Set Label2 = Item.GetInspector.ModifiedFormPages("P.2").Controls("Label2")
Set TextBox2 = Item.GetInspector.ModifiedFormPages("P.2").Controls("TextBox2")
Set Label3 = Item.GetInspector.ModifiedFormPages("P.2").Controls("Label3")
ScrollBar1.Min = -1000
ScrollBar1.Max = 1000
Label1.Caption = "SmallChange 0 to 100"
ScrollBar1.SmallChange = 1
TextBox1.Text = ScrollBar1.SmallChange
TextBox1.MaxLength = 3
Label2.Caption = "LargeChange 0 to 100"
ScrollBar1.LargeChange = 100
TextBox2.Text = ScrollBar1.LargeChange
TextBox2.MaxLength = 3
ScrollBar1.Value = 0
Label3.Caption = ScrollBar1.Value
End Sub
Sub Item_CustomPropertyChange(byval pname)
Set ScrollBar1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("ScrollBar1")
Set TextBox1 = Item.GetInspector.ModifiedFormPages("P.2").Controls("TextBox1")
Set TextBox2 = Item.GetInspector.ModifiedFormPages("P.2").Controls("TextBox2")
Set Label3 = Item.GetInspector.ModifiedFormPages("P.2").Controls("Label3")
If pname = "ScrollBarMin" Then
If IsNumeric(TextBox1.Text) Then
TempNum = CInt(TextBox1.Text)
If TempNum >= 0 And TempNum <= 100 Then
ScrollBar1.SmallChange = TempNum
Else
TextBox1.Text = ScrollBar1.SmallChange
End If
Else
TextBox1.Text = ScrollBar1.SmallChange
End If
ElseIf pname = "ScrollBarMax" Then
If IsNumeric(TextBox2.Text) Then
TempNum = CInt(TextBox2.Text)
If TempNum >= 0 And TempNum <= 100 Then
ScrollBar1.LargeChange = TempNum
Else
TextBox2.Text = ScrollBar1.LargeChange
End If
Else
TextBox2.Text = ScrollBar1.LargeChange
End If
ElseIf pname = "ScrollBarValue" Then
Label3.Caption = ScrollBar1.Value
End If
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.