標籤:修改 pagedown bar window 箭頭 page 字型大小 組件 自己的
捲軸組件(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:使用者操作捲軸後釋放了滑鼠或按鍵。
Delphi TScrollBar 用於滾動視窗、組件內容