我想更改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'和其他表單屬性的預定義屬性不能幫助你。那麼你別無選擇,只能使用自定義滾動條。 –