我想更改winforms中滚动条的实际栏/大拇指部分的大小,但我找不到这样做的方法。无论需要滚动多少,拇指约为实际滚动区域的1/10。无论我需要向下滚动1行还是1000行,这都是一样的。我想要调整它的大小,具体取决于滚动的大小,或者至少使滚动区域大小的50%。更改winforms中滚动条的大小
4
A
回答
2
实际上我明白了。 this.vScrollBar1.LargeChange = this.vScrollBar1.Maximum/2;
将拇指改为轨道长度的一半。
3
的从包含一些属性来调整滚动如:AutoScrollMargin, AutoScrollMinSize, AutoScrollOffset
,并且它也有HorizontalScroll
和VerticalScroll
,最后两个属性表示形式的virtecal和水平滚动条,它们也暴露了一些属性,如Minimum, Maximum, SmallChange, LargeChange, Value..
,如果使用所有那些不符合您的要求,那么您应该使用自定义Scrollbar
。将ScrollBar
添加到窗体并禁用窗体滚动条,并且每当添加控件以形成窗体或更改窗体大小时调整自定义滚动条...
1
滚动条控件的缩略图大小与该控件的ScrollBarName.Maximum
和ScrollBarName.LargeChange
值之间的差值成正比。
要使用ScrollBarName.LargeChange
,ScrollBarName.Maximum
需要比例偏移值,以便滚动条控件在使用时的行为与预期相同。下面的例子演示了如何进行偏移量计算以及如何将它应用于实际的应用程序环境中。
偏移计算:
ScrollBarName.Maximum = MyMaximum + MyLargeChange - 1 ' LargeChange Usage Offset Calcualtion
应用程序上下文:
'*** Using Simplified Values To Avoid Confusion ***
Dim ScrollBarName As New VScrollBar ' Or HScrollBar Control
Dim MyMaximum As Integer = 100 ' Your "off screen" calculated value
Dim MySmallChange As Integer = 10 ' MySmallChange <= MyLargeChange <= MyMaximum
Dim MyLargeChange As Integer = 50 ' MyLargeChange <= MyMaximum (Example produces thumbar sized {(MyLargeChange/ScrollBarName.Maximum) %} Clientsize.width
Me.controls.add(ScrollBarName) ' Add Your Control
ScrollBarName.Dock = DockStyle.Right ' Dock bottom for HScrollBar
ScrollBarName.SmallChange = MySmallChange
ScrollBarName.LargeChange = MyLargeChange
ScrollBarName.Maximum = MyMaximum + MyLargeChange - 1 ' LargeChange Usage Offset Calcualtion
ScrollBarName.Value = 20 ' The scrollBar movement value whereby ScrollBarName.Value <= MyMaximum
相关问题
- 1. JavaFX 2.1更改ScrollPane滚动条大小
- 2. DataGrid滚动条在滚动过程中更改大小
- 3. 更改最大值(C#winforms)后滚动条值不会更新
- 4. TableLayoutPanel更改滚动条(C#WinForms)
- 5. 更改滚动条上视觉提示(注释)的大小
- 6. 更改滚动条
- 7. 滚动时更改视图大小
- 8. 滚动时更改标题大小
- 9. Android ScrollView滚动条大小
- 10. TableView滚动条大小
- 11. XAML更改大小并显示水平滚动条
- 12. 更改表单位置/大小后滚动条消失
- 13. ScrollViewer更改内容大小(ItemControl),而不是显示滚动条
- 14. ScrollViewer中的滚动条大小
- 15. 更改滚动条的值
- 16. 无法更改动作条大小
- 17. 使用C#中的滚动条获取(infragistics Winforms 10.2)控件的内部大小
- 18. Winforms动态大小
- 19. 如何减小滚动条大小thumbnailize
- 20. WinForms中的水平滚动条DataGridView
- 21. 如何在Android中更改垂直滚动条的垂直大小listview
- 22. 使用Windows CE 6.0更改Internet Explorer 6中的滚动条大小
- 23. 如何在Android中滚动固定大小的滚动条?
- 24. 如何更改滚动条
- 25. 更改滚动条位置
- 26. 更改滚动条样式
- 27. 更改iframe中滚动条的颜色
- 28. 更改html中的滚动条
- 29. 收听ListView中的滚动条更改
- 30. 更改ExtJs中的滚动条
除了永远不要使用自定义的滚动条。正确配置后,一切都按预期工作。 –
我不想调整滚动,我只是想改变酒吧的长度。您拖动的部分进行滚动。我想更改实际的vScrollBar控件http://msdn.microsoft.com/en-us/library/system.windows.forms.vscrollbar.aspx – Jack
@Jack:就是这样,你不能访问底层直接显示,表格只显示'VertiaclScroll'属性,但它的类型是'VScrollProperties'而不是'VScrollBar' !.所以如果该'VScrollProperties'和其他表单属性的预定义属性不能帮助你。那么你别无选择,只能使用自定义滚动条。 –