滾動條組件(TScrollBar)此組件是一個Windows滾動條,用於滾動窗口、組件內容。許多控制有滾動條屬性,它們把滾動條作為自己的一部分,對於沒有完整滾動條的控制,TScrollBar組件提供了一個附加的功能,運用它可以使某些控制的內容易於操作。
1、TScrollBar組件的典型用法
一般情況下,滾動條是自動加入的,例如前面講的列表框,當項目不能完全顯示時,列表框將自動加上滾動條。當用戶操作滾動條時,列表自動滾動。
如果想自己操縱窗口滾動,就要用到TScrollBar組件,當用戶在滾動條上操作時,將觸發OnScroll事件,這樣就可以操縱怎樣滾動了。
在通常情況下,用戶只利用OnScroll事件,並在代碼中引用Position屬性,獲取TScrollBar組件中小方塊的位置,然后利用此值進行操作,例如設置文字的字號大小、顏色的取值等。
2、TScrollBar組件的重要屬性
Kind---------此屬性用於設置滾動條是水平方向的還是垂直方向的
LargeChange--設置滾動條滾動的距離
Max------------此屬性用於設置滾動條的最終值
Min------------此屬性用於設置滾動條的起始值
PageSize-------當按PgUp或PgDn鍵時,設置滾動條滾動的距離Position設置或返回滾動條中小方塊的位置
SmallChange----用戶按下滾動條兩端的箭頭時滾動條滾動的距離
(1)Kind屬性
Kind屬性用於設置滾動條是水平方向的還是垂直方向。它有兩個取值:
. sbHorrizontal:水平方向;
. sbVertical:垂直方向。
(2)LargeChange屬性
當用戶單擊滾動條內(不是滾動條兩端的箭頭)時,滾動條滾動的距離是由LargeChange屬性設置的,默認是
1,這是一個相對數。假設LargeChange屬性設為10,如果Max屬性減去Min屬性為80,則用戶只要按8次滾動條就能從一端滾到另一端。
(3)Max屬性和Min屬性
這兩個屬性分別用來設置滾動條的最終值和起始值,它們的取值在-2147483648和2147483647之間。
Max屬性取值必須大於Min屬性,並且必須為0或正整數。
(4)PageSize屬性
當用戶按PgUp或PgDn鍵時,滾動條滾動的距離是由PageSize屬性設置的,默認是1。
(5)Position屬性
Position屬性用於設置或返回滾動條中小方塊的位置,可以在設計期設置Position屬性指定的小方塊的起始位置,也可以在運行期修改Position屬性使滾動條滾動。
(6)SmallChange屬性
SmallChange屬性與LargeChange屬性相似,不同的是,它是用戶按滾動條兩端的箭頭時滾動條滾動的距離,默認值是1。
3、TScrollBar組件的重要事件
OnChange-------------用戶操作滾動條或者通過編程直接修改
Position-------------屬性的值,都會觸發該事件
OnScroll-------------當用戶操作滾動條時將觸發這個事件
(1)OnChange事件
用戶操作滾動條或者通過編程直接修改Position屬性的值,都會觸發該事件。
OnScroll事件只在用戶操作滾動條時才會發生,OnChange事件發生在OnScroll事件之后。
(2)OnScroll事件
當用戶操作滾動條時將觸發這個事件。其中ScrollPos參數返回滾動條中小方塊的位置ScrollCode參數返回滾動條的狀態。可以是以下各值。
. scLineUp:用戶按下滾動條的左或上箭頭或者鍵盤上的向上方向鍵。
. scLineDown:用戶按下滾動條的右或下箭頭或者鍵盤上的向下方向鍵。
. scPageUp:用戶單擊滾動條內小方塊左邊或上邊的區域或者按下PgUp鍵。
. scPageDown:用戶單擊滾動條內小方塊右邊或下邊的區域或者按下PgDn鍵。
. scPosition:用戶在滾動條內拖拽小方塊並且已釋放。
. scTrack:用戶正在拖拽小方塊。
. scTop:用戶把小方塊移到滾動條的上端或左端。
. scBottom:用戶把小方塊移到滾動條的下端或右端。
. scEndScroll:用戶操作滾動條后釋放了鼠標或按鍵。