愛招飛幫助手冊 愛招飛幫助手冊
  • FastERP-1
  • Smart
  • PinToo
  • FastWeb
  • FastERP-2 企業管理系統 (opens new window)
  • 印染業ERP (opens new window)
  • 工廠終端機 (opens new window)
  • TARS
  • MARS
  • TaskRunner
  • Flying
  • FastDesk
  • HiDesk
  • HiNAT
  • FastBPM
  • 設備故障診斷 (opens new window)
  • 設備最佳運轉效益 (opens new window)
  • 企業智能助手SmeGPT (opens new window)
  • 燈號管理 (opens new window)
  • 戰情室 (opens new window)
  • 能源管理 (opens new window)
  • 人車定位 (opens new window)
  • 戰情指揮系統 (opens new window)
  • FastERP-1
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
  • FastERP-1
  • Smart
  • PinToo
  • FastWeb
  • FastERP-2 企業管理系統 (opens new window)
  • 印染業ERP (opens new window)
  • 工廠終端機 (opens new window)
  • TARS
  • MARS
  • TaskRunner
  • Flying
  • FastDesk
  • HiDesk
  • HiNAT
  • FastBPM
  • 設備故障診斷 (opens new window)
  • 設備最佳運轉效益 (opens new window)
  • 企業智能助手SmeGPT (opens new window)
  • 燈號管理 (opens new window)
  • 戰情室 (opens new window)
  • 能源管理 (opens new window)
  • 人車定位 (opens new window)
  • 戰情指揮系統 (opens new window)
  • FastERP-1
  • FastWeb
  • Smart
  • PinToo
  • Flying
  • TARS
  • 通用功能

    • Report
    • Script
    • Echarts
    • Chart
    • DB Install
  • Smart幫助主頁
  • 學習手冊

    • 基本入門

    • 功能介紹

    • 控制元件說明

      • 公共屬性
      • 公共方法
      • 公共事件
      • 視窗控制元件
        • 1. TTabControl元件
          • 1.1. 屬性
          • 1.1.1. Images屬性
          • 1.1.2. Multiline屬性
          • 1.1.3. MultiSelect屬性
          • 1.1.4. ScrollOpposite屬性
          • 1.1.5. Style屬性
          • 1.1.6. TabIndex屬性
          • 1.1.7. TabPosition屬性
          • 1.1.8. Tabs屬性
          • 1.2. 事件
          • 1.3. 方法
        • 2. TPageControl元件
          • 2.1. 屬性
          • 2.1.1. ActivePage屬性
          • 2.1.2. ActivePageIndex屬性
          • 2.1.3. PageCount屬性
          • 2.1.4. Pages屬性
          • 2.2. 事件
          • 2.3. 方法
          • 2.3.1. FindNextPage方法
          • 2.3.2. SelectNextPage方法
        • 3. TImageList元件
          • 3.1. 屬性
          • 3.1.1. BlendColor屬性
          • 3.1.2. BkColor屬性
          • 3.1.3. Count屬性
          • 3.1.4. DrawingStyle屬性
          • 3.1.5. Height屬性和Width屬性
          • 3.1.6. ImageType屬性
          • 3.2. 方法
          • 3.2.1. Add方法
          • 3.2.2. AddIcon方法*
          • 3.2.3. AddImages方法
          • 3.2.4. Assign方法
          • 3.2.5. Clear方法
          • 3.2.6. CreatSize方法
          • 3.2.7. Delete方法
          • 3.2.8. FileLoad方法
          • 3.2.9. Insertlcon方法
          • 3.2.10. Move方法
        • 4. TRichEdit元件
          • 4.1. 屬性
          • 4.1.1. DefAttributes屬性*
          • 4.1.2. HideSelection屬性
          • 4.1.3. Lines屬性
          • 4.1.4. Paragraph屬性*
          • 4.1.5. PlainText屬性
          • 4.1.6. SelAttributes屬性
          • 4.1.7. SelLength屬性
          • 4.1.8. SelStart屬性
          • 4.1.9. SelText屬性
          • 4.2. 方法
          • 4.2.1. Clear方法
          • 4.2.2. FindText方法*
        • 5. TTrackBar元件
          • 5.1. 屬性
          • 5.1.1. Max屬性
          • 5.1.2. Min屬性
          • 5.1.3. Position屬性
          • 5.1.4. SelStart屬性
          • 5.1.5. SelEnd屬性
          • 5.1.6. Frequency屬性
          • 5.1.7. LineSize屬性
          • 5.1.8. PageSize屬性
          • 5.1.9. Orientation屬性
          • 5.2. 事件
          • 5.2.1. OnChange事件
          • 5.3. 方法
          • 5.3.1. SetTick方法
        • 6. TProgressBar元件
          • 6.1. 屬性
          • 6.1.1. Smooth屬性
          • 6.1.2. Step屬性
          • 6.2. 方法
          • 6.2.1. StepBy方法
          • 6.2.2. StepIt方法
        • 7. TUpDown元件
          • 7.1. 屬性
          • 7.1.1. Associate屬性
          • 7.1.2. AlignButton屬性
          • 7.1.3. ArrowKeys屬性
          • 7.1.4. Increment屬性
          • 7.1.5. Max屬性
          • 7.1.6. Min屬性
          • 7.1.7. Orientation屬性
          • 7.1.8. Position屬性
          • 7.1.9. Warp屬性
          • 7.2. 事件
          • 7.2.1. OnChanging事件
          • 7.2.2. OnChangingEx事件
          • 7.2.3. OnClick事件
        • 8. THotKey元件
          • 8.1. 屬性
          • 8.1.1. AutoSize屬性
          • 8.1.2. HotKey屬性
          • 8.1.3. InvalidKeys屬性
          • 8.1.4. Modifiers屬性
          • 8.2. 事件
        • 9. TAnimate元件
          • 9.1. 屬性
          • 9.1.1. Active屬性
          • 9.1.2. Center屬性
          • 9.1.3. CommonAVI屬性
          • 9.1.4. FileName屬性
          • 9.1.5. FrameCount屬性
          • 9.1.6. FrameHeight屬性
          • 9.1.7. FrameWidth屬性
          • 9.1.8. Open屬性
          • 9.1.9. Repetitions屬性
          • 9.1.10. ResName屬性
          • 9.1.11. StartFrame屬性
          • 9.1.12. StopFrame屬性
          • 9.1.13. Transparent屬性
          • 9.2. 事件
          • 9.3. 方法
          • 9.3.1. Play方法
          • 9.3.2. Reset方法
          • 9.3.3. Seek方法
          • 9.3.4. Stop方法
        • 10. TDateTimePicker元件
          • 10.1. 屬性
          • 10.1.1. CalColors屬性
          • 10.1.2. Date屬性
          • 10.1.3. DateFormat屬性
          • 10.1.4. DateTime屬性
          • 10.1.5. Format屬性
          • 10.1.6. Kind屬性
          • 10.1.7. MaxDate屬性
          • 10.1.8. MinDate屬性
          • 10.1.9. Time屬性
          • 10.2. 事件
          • 10.3. 方法
        • 11. TMonthCalendar元件
          • 11.1. 屬性
          • 11.1.1. Date屬性
          • 11.1.2. EndDate屬性
          • 11.1.3. FirstDayOfWeek屬性
          • 11.1.4. MaxSelectRange屬性
          • 11.1.5. MultiSelect屬性
          • 11.1.6. ShowToday屬性
          • 11.1.7. ShowTodayCircle屬性
          • 11.1.8. WeekNumbers屬性
          • 11.2. 事件
        • 12. TTreeView元件
          • 12.1. 屬性
          • 12.1.1. AutoExpand 屬性*
          • 12.1.2. BorderStyle 屬性
          • 12.1.3. Canvas 屬性
          • 12.1.4. DropTarget 屬性
          • 12.1.5. HideSelection 屬性
          • 12.1.6. HotTrack 屬性
          • 12.1.7. Images 屬性
          • 12.1.8. Indent 屬性
          • 12.1.9. Items 屬性*
          • 12.1.10. MultiSelect 屬性
          • 12.1.11. Readonly 屬性
          • 12.1.12. RightClickSelect 屬性
          • 12.1.13. RowSelect 屬性
          • 12.1.14. Selected 屬性
          • 12.1.15. SelectionCount 屬性
          • 12.1.16. Selections 屬性*
          • 12.1.17. ShowButtons 屬性
          • 12.1.18. ShowLines 屬性
          • 12.1.19. ShowRoot 屬性
          • 12.1.20. SortType 屬性
          • 12.1.21. StateImages 屬性
          • 12.1.22. TopItem 屬性
          • 12.2. 事件
          • 12.3. 方法
          • 12.3.1. AlphaSort 方法
          • 12.3.2. ClearSelection 方法
          • 12.3.3. FindNextToSelect方法
          • 12.3.4. FullCollapse 方法
          • 12.3.5. FullExpand 方法
          • 12.3.6. GetNodeAt 方法
          • 12.3.7. GetSelections 方法
          • 12.3.8. IsEditing 方法
          • 12.3.9. LoadFromFile 方法
          • 12.3.10. LoadFromStream 方法
          • 12.3.11. SaveToFile 方法
          • 12.3.12. SaveToStream 方法
          • 12.3.13. Select 方法
          • 12.3.14. Subselect 方法
        • 13. TListView元件
          • 13.1. 屬性
          • 13.1.1. BoundingRect 屬性
          • 13.1.2. CheckBoxes 屬性
          • 13.1.3. Column 屬性
          • 13.1.4. ColumnClick 屬性
          • 13.1.5. Columns屬性
          • 13.1.6. GridLines 屬性
          • 13.1.7. HideSelection 屬性
          • 13.1.8. HotTrack 屬性
          • 13.1.9. HotTrackStyles 屬性
          • 13.1.10. ItemFocused屬性
          • 13.1.11. Itemlndex 屬性
          • 13.1.12. Items 屬性
          • 13.1.13. Largelmages 屬性
          • 13.1.14. MultiSelect 屬性
          • 13.1.15. ReadOnly 屬性
          • 13.1.16. RowSelect屬性
          • 13.1.17. SelCount 屬性
          • 13.1.18. Selected 屬性
          • 13.1.19. ShowColumnHeaders 屬性
          • 13.1.20. ShowWorkAreas屬性
          • 13.1.21. SmallImages 屬性
          • 13.1.22. SortType 屬性
          • 13.1.23. ViewStyle屬性
          • 13.2. 事件
          • 13.2.1. OnChange 事件
          • 13.2.2. OnChanging 事件
          • 13.2.3. OnColumnClick事件
          • 13.2.4. OnColumnDragged事件
          • 13.2.5. OnColumnRightClick 事件
          • 13.2.6. OnCompare 事件
          • 13.2.7. OnEdited事件
          • 13.2.8. OnEditing 事件
          • 13.2.9. OnGetlmagelndex 事件
          • 13.2.10. OnGetSubItemImage 事件
          • 13.2.11. OnInsert 事件
          • 13.2.12. OnSelectltem 事件
          • 13.3. 方法
          • 13.3.1. AlphaSort方法
          • 13.3.2. Arrange方法
          • 13.3.3. Clear 方法
          • 13.3.4. ClearSelection 方法
          • 13.3.5. CopySelection 方法
          • 13.3.6. CustomSort 方法
          • 13.3.7. DleteSelected 方法
          • 13.3.8. FindCaption方法
          • 13.3.9. GetItemAt 方法
          • 13.3.10. GetNearestltem 方法
          • 13.3.11. GetNextltem 方法
          • 13.3.12. GetSearchString 方法
          • 13.3.13. IsEditing 方法
          • 13.3.14. SelectAll 方法
        • 14. THeaderControl元件
          • 14.1. 屬性
          • 14.1.1. Images屬性
          • 14.1.2. Sections屬性
          • 14.1.3. Style屬性
          • 14.2. 事件
          • 14.2.1. OnDrawSection事件
          • 14.2.2. OnSectionResize事件
          • 14.2.3. OnSectionTrack事件
        • 15. TstatusBar元件
          • 15.1. 屬性
          • 15.1.1. AutoHint屬性
          • 15.1.2. SimplePanel屬性
          • 15.1.3. SimpleText屬性
          • 15.1.4. SizeGrip屬性
          • 15.2. 事件
        • 16. TToolBar元件
          • 16.1. 屬性
          • 16.2. 事件
          • 16.3. 方法
        • 17. TCoolBar元件
          • 17.1. 屬性
        • 18. TPageScroller元件
          • 18.1. 屬性
          • 18.2. 事件
          • 18.3. 方法
      • 系統控制元件
      • 標準控制元件
      • 對話方塊控制元件
      • 標準工控控制元件
      • 專業工控控制元件
      • 數據控制控制元件
      • 數據表格控制元件
      • 數據感知控制元件
      • 通訊控制控制元件
      • 儀表採集控制元件
      • 監控視訊控制元件
      • 數據圖表控制元件
      • 流程圖表控制元件
      • 數據分析控制元件
      • 複合數控控制元件
      • 模擬數控控制元件
      • 調節數控控制元件
      • 數位數控控制元件
      • 數據數控控制元件
      • 地圖控制元件
      • 其他控制元件
      • SVG控制元件
      • IsoBean控制元件
      • 樣式控制元件
      • 樣式外觀控制元件
      • 樣式高級控制元件
      • 樣式工具控制元件
      • 樣式數據控制元件
      • 樣式控制元件GP
      • 樣式數據控制元件GP
    • 功能用法

    • 專用模板

    • 開發流程

    • 函式程式

  • 開發手冊

目录

視窗控制元件

# Smart控制元件說明-Windows(視窗)

  視窗空間盤區域包含用於視窗顯示補充的佈局控制元件以及一些基礎的設定工具控制元件。

# 1. TTabControl元件

  TTabControl元件使用起來,根本不會使程式簡單化,所以不提倡使用此元件,可以用TPageControl元件代替。

  與TPageControl元件不同的是,雖然Tab元件上可以有一組按鈕,但它們的客戶區是公用的,當用戶選擇其中某個按鈕時,將觸發OnChange事件。在處理OnChange事件的控制代碼中,必須自己定義怎樣操縱客戶區上的內容。例如,可以用Tab元件做一個圖片管理器,使用者選擇不同的按鈕,Tab按鈕的客戶區就顯示不同的內容(使用者必須用程式碼實現)。

# 1.1. 屬性

  • TTabControl元件主要屬性
屬性 功能說明
DisplayRect 指定選項卡元件客戶區的邊框
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
DockSite 使用該屬性可確定元件是否為拖動和停靠操作目標
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
HotTrack 確定滑鼠下方選項卡上的標籤是否自動突出顯示,設定該屬性為True,為使用者單擊選擇的標籤提供視覺上的反應
Images 指定在選項卡中繪製的影象
MultiLine 確定選項卡是否可以顯示在多行上
MultiSelect 指定是否可以選擇多個選項卡
OwnerDraw 指定選項卡元件是否處理自己的繪製
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
RaggedRight 指定是否拉伸選項卡以填充元件的寬度
ScrollOpposite 確定如何在多行選項卡元件中滾動選項卡行
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
Style 指定選項卡元件的樣式
TabHeight 設定該屬性可控制組件客戶區域上顯示標籤的高度,這是單個標籤的畫素高度。如果設定為0,標籤會自動改變其大小以容納文字
TabIndex 標識選項卡元件上已選定的選項卡
TabOrder 確定父元件的切換順序
TabPosition 確定選項卡是顯示在頂部還是底部
Tabs 包含標籤選項卡元件選項卡的文字字串列表
TabStop 使用該屬性可允許或不允許用Tab訪問元件
TabWidth 設定該屬性可控制組件客戶區域上顯示標籤的寬度,這是單個標籤的畫素寬度。如果將TabWidth設定為0,標籤會自動改變其大小以容納文字
Visible 確定元件是否可見

  下面介紹程式中TTabControl元件經常用的屬性。

# 1.1.1. Images屬性

  在Images屬性中與ImageList元件關聯,可以為每個標籤設定一個圖示。主要方法是將一個ImageList元件中調入n個圖片,然後將TTabControl元件的Images屬性設定為擁有圖片列表的ImageList元件,就可以看見TTabControl元件的標籤頁上有圖示顯示。

# 1.1.2. Multiline屬性

  此屬性用於設定TTabControl元件標籤按鈕的顯示位置。True值表示按鈕可以自動分成幾行顯示;False值表示按鈕顯示在一行,如果一行不能顯示全部按鈕,則在按鈕右側顯示兩個可以左右移動標籤按鈕的箭頭狀按鈕。

# 1.1.3. MultiSelect屬性

  此屬性用於設定TTabControl元件是否可以選擇多個標籤按鈕。MultiSelect屬性必須與Style屬性配合使用,當MultiSelect屬性為True值時,並且Style屬性的取值不為tsTabs值時,使用者在按下Ctrl鍵的情況下單擊標籤按鈕時可以選擇多個;當MultiSelect屬性為False值時,不管Style屬性為何值,只能選擇一個標籤按鈕。

# 1.1.4. ScrollOpposite屬性

  此屬性決定使用者在單擊另一行上的按鈕后,前一行移到最下面或上面一行。在Multiline屬性為False值時,並且有多行按鈕行顯示的前提下:True值將位於目前行下面的所有按鈕行移動到最下面;False值是將目前選中的按鈕行移動到與使用者區相臨的位置。

# 1.1.5. Style屬性

  改變Styles屬性,可以將標籤的顯示方式設定為標籤方式(tsTabs)、按鈕方式(tsButtons)和平板按鈕方式(tsFlatButtons)。

# 1.1.6. TabIndex屬性

  此屬性是Tab元件上的每個按鈕的序號,可以用來設定Tab元件上選中的按鈕或獲取已經等距的按鈕。

# 1.1.7. TabPosition屬性

  此屬性可以設定Tab元件的標籤按鈕顯示的位置,TabPosition屬性的設定可能會與Style屬性的設定產生衝突,在後面的實體中將提到如何解決此問題。它有如下4個選項。

  • tpBottom:在Tab元件的下部顯示標籤按鈕。
  • tpLeft:在Tab元件的左部顯示標籤按鈕。
  • tpRight:在Tab元件的右部顯示標籤按鈕。
  • tpTop:在Tab元件的上部顯示標籤按鈕。

# 1.1.8. Tabs屬性

  通過修改Tabs屬性,可以手工地新增標籤的個數。其中在Tabs屬性的編輯器中,每一行內容可以形成一個標籤頁,可以利用一個TStringList型別的變數對此屬性進行設定。

# 1.2. 事件

  • TTabControl元件主要事件列表
事件 何時觸發
OnChange 選擇新選項卡后觸發該事件
OnChanging 在選擇新選項卡之前立即觸發該事件
OnContextPopup 當用戶右鍵單擊元件或以其他方式呼叫彈出功能表(例如使用鍵盤)時觸發該事件
OnDockDrop 當另一個元件停靠到元件時觸發該事件
OnDockOver 在元件上拖動另一個元件時觸發該事件
OnDragDrop 使用者刪除正在拖動的對象時觸發該事件
OnDragOver 當用戶在元件上拖動對像時觸發該事件
OnDrawTab 即將繪製選項卡時觸發該事件
OnEndDock 當對象的拖動結束后產生該事件
OnEndDrag 當對象的拖動結束后產生該事件
OnEnter 在元件接收輸入焦點時觸發該事件
OnExit 當輸入焦點從一個元件轉移到另一個元件時觸發該事件
OnGetImageIndex 選項卡即將顯示其關聯影象時觸發該事件
OnGetSiteInfo 返回元件的停靠資訊
OnMouseActivate 當用戶使用滑鼠指針在元件上按下滑鼠按鈕並且父窗體未啟用時觸發該事件
OnMouseDown 當用戶使用滑鼠指針在元件上按下滑鼠按鈕時觸發該事件
OnMouseEnter 使用者將滑鼠移動到元件中時觸發該事件
OnMouseLeave 使用者將滑鼠移出元件之外時觸發該事件
OnMouseMove 當用戶在滑鼠指針懸停在元件上時移動滑鼠指針時觸發該事件
OnMouseUp 當用戶釋放用滑鼠指針在元件上按下的滑鼠按鈕時觸發該事件
OnResize 在調整元件大小后立即觸發該事件
OnStartDock 當用戶開始拖動元件時觸發該事件
OnStartDrag 當用戶通過左鍵單擊元件並按住滑鼠按鈕開始拖動元件或其包含的對象時觸發該事件
OnUnDock 當應用程式嘗試取消停靠到視窗元件的元件時觸發該事件

  下面介紹程式中TTabControl元件的常用事件。

  • 當用戶按下了另一個按鈕時將觸發OnChanging事件。在使用者按下了其他按鈕並且輸入焦點已切換到新的按鈕上之後,將觸發OnChange事件。

  • OnChanging事件與OnChange事件及功能基本相同,只是OnChanging事件發生在OnChange事件的前面。如果需要在按下某個按鈕時做相應的處理,可以在這兩個事件的任意一個中新增執行程式碼,並利用TabIndex屬性獲得按下的按鈕。

# 1.3. 方法

  • TTabControl元件主要方法列表
方法 功能描述
RowCount 返回Tab元件上的按鈕行數
ScrollTabs 相當於使用者單擊箭頭來滾動

  下面介紹程式中TTabControl元件的常用方法。

  • RowCount方法   此方法用來返回Tab元件上按鈕的行數,返回值為Integer型別,可以將此值賦給一個Integer型別的變數。

  • ScrollTabs方法   此方法可以用來代替使用者單擊箭頭滾動的動作。方法中包含一個Delta參數,其取值型別為Integer,可以用此參數來設定移動的位置,正數表示向後移動,負數表示向前移動,0表示不移動。


# 2. TPageControl元件

  TPageControl元件主要用於程式的選項視窗,因為選項視窗擁有很多方面的設定。在TPageControl元件上單擊滑鼠右鍵,在彈出式功能表中選中「NewPage」功能表命令,將會增加一個新的頁面。對於TPageControl元件,利用滑鼠左鍵單擊標籤與單擊頁面位置選中的對象是不同的。如果單擊標籤,則選中了整個元件,同時設定目前啟用頁,這時按下Delete鍵,會把整個元件刪除。如果單擊頁面位置,則選中了當前啟用頁的頁面,這時按下Delete鍵,只刪除目前選中的頁面。在TPageControl元件的不同頁面中,可以加入不同的元件。

# 2.1. 屬性

  • TPageControl元件主要屬性
屬性 功能說明
ActivePageIndex 使用該屬性可獲得或設定活動頁的索引
PageCount 表示TPageControl對像中的頁數
Pages 列出TPageControl中的所有頁面
ActivePage 讀取該屬性的值可確定使用者所選頁
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式 對齊方式不改變元件包含的數量、日期、事件和目前數
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
DockSite 使用該屬性可確定元件是否為拖動和停靠操作目標
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
HotTrack 確定滑鼠下方選項卡上的標籤是否自動突出顯示,設定該屬性為True,為使用者單擊選擇的標籤提供視覺上的反應
Images 指定在選項卡中繪製的影象
MultiLine 使用該屬性可確定如何顯示標籤(多行顯示)
OwnerDraw 確定標籤控制組件是否自己處理繪製
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
RaggedRight 確定是否拉伸選項卡行以填充元件的寬度
ScrollOpposite 設定該屬性可確定當用戶在其他行選擇標籤時,應當將多行標籤控制組件中前面一行的標籤移到何處
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
Style 使用該屬性可確定標籤的外觀,可作為筆記本標籤或按鈕顯示
TabHeight 設定該屬性可控制組件客戶區域上顯示標籤的高度,這是單個標籤的畫素高度。如果設定為0,標籤會自動改變其大小以容納文字
TabIndex 讀取該屬性可確定使用者顯示的標籤,這個屬性是儲存在Tabs屬性中的標籤列表中的標籤索引
TabOrder 確定父元件的切換順序
TabPosition 確定選項卡是顯示在頂部還是底部
TabStop 使用該屬性可允許或不允許用Tab訪問元件
TabWidth 設定該屬性可控制組件客戶區域上顯示標籤的寬度,這是單個標籤的畫素寬度。如果將TabWidth設定為0,標籤會自動改變其大小以容納文字
Visible 確定元件是否可見

  下面介紹程式中TPageControl元件常用的屬性。

# 2.1.1. ActivePage屬性

property ActivePage: TTabSheet;
1

  在選中整個元件的情況下,改變ActivePage屬性,可以改變目前的啟用頁。

  • 應用
      設定該屬性可使所選頁顯示在最前面。
procedure TMyHandler.BUTTON1CLICK;
//點選按鈕載入頁面資訊
var
  i: Integer;
begin
  for i := 0 to FThis.PageControl1.PageCount - 1 do
    FThis.ComboBox1.Items.AddObject(FThis.PageControl1.Pages[i].Name , FThis.PageControl1.Pages[i]);
    FThis.ComboBox1.ItemIndex := 0;
end;

procedure TMyHandler.COMBOBOX1CHANGE;
//選擇需要的頁面進行顯示
begin
  if (Sender is TComboBox) then
  with(Sender as TComboBox) do
    FThis.PageControl1.ActivePage := TTabSheet(Items.Objects[ItemIndex]);
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# 2.1.2. ActivePageIndex屬性

property ActivePagelndex: Integer;
1

  使用該屬性可獲得或設定活動頁的索引。其值大於0或小於PageCount-1,超出時將導致頁面元件中沒有活動頁。改變其值即改變ActivePage屬性,反之亦然。如果無活動頁,該屬性值為-1。

# 2.1.3. PageCount屬性

property PageCount: Integer;
1

  使用該屬性可確定Page屬性中列出的頁數。如果MultiLine屬性為False,則並不是所有頁面都有使用者可視的標籤。

# 2.1.4. Pages屬性

property Pages[Index: Integer]: TTabSheet;
1

  該屬性為只讀,列出TPageControl中的所有頁,用其可直接存取在頁面元件中指定的頁。

# 2.2. 事件

  • TPageControl元件主要事件列表
事件 何時觸發
OnChange 選擇新選項卡后觸發該事件
OnChanging 在選擇新選項卡時立即觸發該事件
OnContextPopup 當用戶右鍵單擊元件或以其他方式呼叫彈出功能表(例如使用鍵盤)時觸發該事件
OnDockDrop 當另一個元件停靠到元件時觸發該事件
OnDockOver 當另一個元件拖放至該元件時觸發該事件
OnDragDrop 使用者刪除正在拖動的對象時觸發該事件
OnDragOver 當用戶在元件上拖動對像時觸發該事件
OnDrawTab 即將繪製選項卡時觸發該事件
OnEndDock 當對象的拖動結束后產生該事件
OnEndDrag 當對象的拖動結束后產生該事件
OnEnter 在元件接收輸入焦點時觸發該事件
OnExit 當輸入焦點從一個元件轉移到另一個元件時觸發該事件
OnGetImageIndex 選項卡顯示其關聯影象時觸發該事件
OnGetSiteInfo 返回元件的停靠資訊
OnMouseActivate 當用戶使用滑鼠指針在元件上按下滑鼠按鈕並且父窗體未啟用時觸發該事件
OnMouseDown 當用戶使用滑鼠指針在元件上按下滑鼠按鈕時觸發該事件
OnMouseEnter 使用者將滑鼠移動到元件中時觸發該事件
OnMouseLeave 使用者將滑鼠移出元件之外時觸發該事件
OnMouseMove 當用戶在滑鼠指針懸停在元件上時移動滑鼠指針時觸發該事件
OnMouseUp 當用戶釋放用滑鼠指針在元件上按下的滑鼠按鈕時觸發該事件
OnResize 在調整元件大小后立即觸發該事件
OnStartDock 當用戶開始拖動元件時觸發該事件
OnStartDrag 當用戶通過左鍵單擊元件並按住滑鼠按鈕開始拖動元件或其包含的對象時觸發該事件
OnUnDock 當應用程式嘗試取消停靠到視窗元件的元件時觸發該事件

  下面介紹程式中TPageControl元件的常用事件。

  • 當用戶按下了另一個Page頁時將觸發OnChanging事件。在使用者按下了其他Page頁並且輸入焦點已切換到新的Page頁上之後,將觸發OnChange事件。
  • OnChanging事件與OnChange事件及功能基本相同,只是OnChanging事件發生在OnChange事件的前面。如果需要在按下某個按鈕時做相應的處理,可以在這兩個事件的任意一個中新增執行程式碼,並利用PageIndex屬性獲得按下的按鈕。

# 2.3. 方法

  • TPageControl元件主要方法列表
方法 功能描述
FindNextPage 此函式返回CurPage參數指定的頁的相鄰頁
SelectNextPage 此過程用於選擇目前頁的前一頁或下一頁

  下面介紹程式中TPageControl元件的常用方法。

# 2.3.1. FindNextPage方法

function FindNextPage(CurPage: TTabSheet; GoForward,CheckTabVisible: Boolean): TTabSheet;
1

  此方法可以返回CurPage參數指定頁的相鄰頁,它包含3個參數。

  • CurPage參數:取值為TTabSheet型別,用於指定TTabSheet。

  • GoForward參數:取值為Boolean型別,True值取下一頁,False值取上一頁。

  • CheckTabVisible參數:取值為Boolean型別,True值為檢查TTabSheet的TabVisible屬性,如果TabVisible屬性為False,則不顯示此頁而直接跳至下一頁或上一頁;如果CheckTabVisible參數為False,則不檢查TTabSheet的TabVisible屬性,即不管TabVisible屬性為True還是False,都顯示這一頁的內容。

  • 應用
      若GoForward參數為True,則返回頁面元件中CurPage參數指定的下一頁;否則返回前一 頁。如果CurPage不是頁面元件中的一頁,且GoForward為True,則返回第1頁;GoForward 為False,返回最後一頁;如果GoForward為True,且CurPage為頁面元件的最後一頁。CheckTabVisible為True,該方法返回用TabVisible屬性設定為True的下一頁;否則返回包括用 TabVisible屬性設定為False的下一頁。

procedure TMyHandler.PAGECONTROL1CHANGE;
//頁面發生變化時觸發該事件
var
  PrevCaption,NextCaption: ShortString;
begin
  with (Sender as TPageControl) do
  begin
    NextCaption := FindNextPage(ActivePage, True, False).Caption;
    PrevCaption := FindNextPage(ActivePage, False, False).Caption;
  end;
  ShowMessage('Previous tab Caption:''' + PrevCaption + ''' Next tab Caption: ''' + NextCaption + '''');
end;
1
2
3
4
5
6
7
8
9
10
11
12
點選Tab,顯示前頁和后頁標籤資訊

# 2.3.2. SelectNextPage方法

procedure SelectNextPage(GoForward: Boolean; CheckTabVisible:Boolean = True);
1

  此方法用於選擇目前頁的上一頁或下一頁,與FindNextPage方法類似,只是其參數中沒有CurPage參數,只有GoForward參數和CheckTabVisible參數,取值及功能請參見FindNextPage方法的說明。   下面的程式碼是將一個名稱為PageControl1的TPageControl元件順序往前移動一頁,並且檢測TTabSheet的TabVisible屬性:

FThis.PageControl.SelectNextPage(False,True);
1

# 3. TImageList元件

  TImageList元件用於儲存和管理相同大小的一組影象,其中的每個影象可以通過影象索引訪問

# 3.1. 屬性

  • TImageList元件主要屬性
屬性 功能說明
AllocBy 當TImageList元件需要為新新增的影象分配控制元件時,設定影象列表新增影象的數量
BkColor 此屬性用於設定影象的背景顏色
BlendColor 此屬性用於設定圖形的前景顏色
Count 此屬性用於返回影象列表中影象的個數
DrawingStyle 此屬性用於設定圖形顯示的風格
Handle 此屬性用於返回Windows影象列表的控制代碼
Height 此屬性用於設定圖形的畫素高度
Width 此屬性用於設定影象的寬度
ImageType 此屬性用於設定圖形的型別(繪畫時是否使用掩碼)
Masked 圖形列表中允許有透明的圖形

  下面介紹程式中TImageList元件的常用屬性。

# 3.1.1. BlendColor屬性

property BlendColor: TColor;
1

  BlendColor屬性用於確定影象的前景顏色。當影象列表的DrawingStyle屬性為dsFocus或 dsSelected時,設定BlendColor屬效能夠改變影象的前景顏色。

# 3.1.2. BkColor屬性

property BkColor: TColor;
1

  BkColor屬性用於確定影象的背景顏色。當BkColor屬性為clNone時,影象是透明的,否 則影象的背景採用BkColor屬性值。BkColor屬性只有在Masked屬性為True時才起作用。

# 3.1.3. Count屬性

property Count: Integer;
1

  Count屬性用於顯示影象列表中的影象數量。使用該屬效能夠遍歷影象列表中的影象(通過 GetBitmap、Getlcon 等方法)。

# 3.1.4. DrawingStyle屬性

property DrawingStyle: TDrawingStyle;
1

  此屬性用於設定圖形顯示的風格,他有如下4個可選值。

  • dsFocused:表示目前影象有輸入焦點。
  • dsSelected:表示目前影象被選擇。
  • dsNormal:表示目前影象處於通常狀態。
  • dsTransparent:表示目前影象是透明的。

# 3.1.5. Height屬性和Width屬性

property Height: Integer;
property Width: Integer;
1
2

  這連個屬性用來指定圖形的高度和寬度。列入喜愛功能表中引用的影象進場將這個連個值設定為16(預設值),而在工具欄中是用時可以將這個連個屬性設定為32,這樣就可以是在工具欄中顯示的影象比較大。當然這個兩個值可以根據需要去不同的值。

# 3.1.6. ImageType屬性

property ImageType: TImageType;
1

  此屬性用於設定影象的型別,它有如下兩個可選項

  • itImage表示普通的影象。
  • itmask表示畫的是影象的掩碼。

# 3.2. 方法

  • TImageList元件主要方法列表
方法 功能描述
Add 此方法想影象列表中加入一個影象及其掩碼,並返回點陣圖在影象列表中的索引號
AddIcon 此方法想影象列表中加入一個圖示,並返回圖示在影象列表中的索引號
AddImages 此方法用於把另一個TImageList元件的影象加到影象列表中
Addmasked 此方法向影象列表中加入一個影象
Assign 此方法用Source參數指定的另一個影象列表取代自己
Clear 清空影象列表中的所有影象
CreateSize 建立一個影象列表,並指定影象的高度和寬度
Delete 此方法用於刪除影象列表中的一個影象
Draw 此方法吧影象列表中的指定序號的影象畫到指定畫布的指定的位置
DrawOverLay 此方法用於把影象列表中的指定序號的影象畫到指定畫布的指定位置
FileLoad 此方法用於從一個資原始檔中讀取影象到影象列表中
GetBitmap 此方法吧指定序號的影象寫到Image參數指定的點陣圖中
GetIcon 此方法是把指定序號的影象寫到Image參數指定的影象中
Insert 此方法吧一個圖示查到影象列表的指定序號之後
InserIcon 此方法是吧一個圖示查到影象列表的指定序號之後
InsertMasked 此方法吧一個點陣圖查到指定的序號之後
Move 此方法用於把影象列表中的一個影象移動到另一個位置
Replace 此方法用於一個新的點陣圖機器掩碼代替影象列表中指定序號的影象
ReplanceIcon 此方法用一個新的圖示替換影象列表中指定序號的影象
TeplaceMasked 此方法用一個新的點陣圖代替影象列表中指定序號的影象
ResourceLoad 此方法從一個指定的資原始檔中取出指定型別的影象到影象列表中

下面介紹程式中TImageList元件常用的方法。

# 3.2.1. Add方法

function Add(Image: TBitmap; Mask: TBitmap): Integer;
1

  此方法向影象列表中加入一個點陣圖及其掩碼,並返回點陣圖在圖形列表中的索引號。他有兩個屬性為TBitMap型別的參數

  • Image加入的點陣圖
  • Mask點陣圖的掩碼

# 3.2.2. AddIcon方法*

function Addlcon(Image: TIcon): Integer;
1

  Addlcon方法用於向影象列表中新增一個圖示,如果操作成功,則返回新增的圖示索引, 否則返回-1。

# 3.2.3. AddImages方法

procedure AddImages(Value: TCustomImageList);
1

  Addlmages方法用於從另一個影象列表中新增影象。AddImages方法中的Value參數是TCusTomImageList型別,例如用下面的程式碼可以將兩個TImageList元件的影象合併到一個影象列表中。

FThis.ImageList1.Addimages(FThis.Imagelist2);//將ImageList2d影象新增到ImageList1中
1

# 3.2.4. Assign方法

procedure Assign(Source: TPersistent); override;
1

  Assign方法用於從一個影象列表中向另一個影象列表中複製資訊。使用該方法能夠從另一個對像中複製資訊到影象列表中。如果參數Source為一個影象列表,Assign操作將丟棄,前影象列表中的所有資訊,用Source中的資訊替換;如果Source為Nil,則淸空影象列表中的所有影象。下面的程式碼演示了通過Assign方法克隆ImageList1元件。

FThis.ImageList2.Assign(FThis.ImageListl);
1

# 3.2.5. Clear方法

procedure Clear;
1

  此方法用於清空影象列表中的所有影象。例如ImageList1影象列表中的所有影象,可以用下面的程式碼實現:

FThis.ImageList1.Clear;
1

# 3.2.6. CreatSize方法

constructor CreateSize(AWidth: Integer; AHeight: Integer);
1

  此方法實際是TImageList的構造。用於建立一個影象列表,並指定影象列表中影象的高度和寬度。GreateSize方法中有如下兩個參數:

  • AWidth影象的寬度
  • AHeight影象的高度

  在一個已經引用影象的列表中,可以利用此方法重新指定影象的寬度和高度。

# 3.2.7. Delete方法

procedure Delete(Index: Integer);
1

Delete方法用於從影象列表中刪除指定的影象。在程式中,呼叫Delete方法一次能夠刪除 一個影象。

FThis.ImageList1.Delete(0);
1

# 3.2.8. FileLoad方法

function FileLoad(ResType: TResType; const Name: string; MaskColor: TColor): Boolean;
1

  FileLoad方法用於載入影象到影象列表中。利用FileLoad方法能夠從磁碟檔案中載入影象到影象列表中,同時可以指定影象的透明顏色。

  • ResType:標識載入的影象型別,可以是點陣圖、滑鼠指針或圖示。
  • Name:標識影象檔案的名稱。
  • MaskColor:設定影象的背景顏色。如果方法執行成功,返回值為True,否則為False。
if FThis.ImageList1.FileLoad(rtBitmap,'c:\temp.bmp',clwhite) then
    FThis.ImageList1.Draw(Canvas,0,0,0);
1
2

# 3.2.9. Insertlcon方法

procedure Insertlcon(lndex: Integer; Image: TIcon);
1

  Insertlcon方法用於在影象列表中的指定位置插入一個圖示。

  • Index:標識插入點。
  • Image:待插入的圖示。

# 3.2.10. Move方法

procedure Move(CurIndex, Newlndex: Integer);
1

  Move方法用於將所標識的影象移動到指定的位罝。

  • Curlndex:標識影象的原位置。
  • Newlndex:標識影象的新位置。

  使用Move方法能夠將影象列表中的某個影象移動到新的位置。下面的程式碼是將影象列表中的第一個影象(Index為0)移動到第二個位置(Index為1)。

    FThis.ImageList1.Move(0,1);
1

# 4. TRichEdit元件

  使用TRichEdit元件,對象可在窗體中放置一個標準的允許使用者輸入包含字型屬性和段落格式文字的文字編輯元件。該元件提供了多種屬性和方法用來輸入或編輯文字,但不提供使用者使用這些格式選項時的介面元件。應用程式必須編輯實現用戶界面的元件以實現該對象的文字編輯功能。

# 4.1. 屬性

  • TRichEdit元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Alignment 確定文字在文字編輯元件中的對齊方式
Anchors 指定元件如何停放在父窗體中
BevelEdges 使用該屬性可獲得或設定元件成斜角的邊緣
BevelInner 使用該屬性可指定內斜角是否具有凸、凹或平坦的外觀
BevelKind 使用該屬性可修改斜角的風格,即斜角的傾斜程度
BevelOuter 使用該屬性可指定外斜角是否具有凸、凹或平坦的外觀,外斜角直接顯示在邊框內和內斜角的外面
BevelWidth 使用該屬性可指定內外斜角的畫素寬度
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
BorderStyle 使用該屬性可影響編輯元件的客戶區域突出效果,其取值為bsSingle時,編輯元件的客戶區域有一個單線邊框;為bsNone時,無邊框
BorderWidth 使用該屬性可獲得或設定元件的邊框寬度
Color 指定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DefAttributes 使用該屬性可獲得或設定編輯元件中新插入文字時預設字元的格式
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
HideScrollBars False:編輯元件內容改變時,可放置滾動條閃爍。ScrollBars屬性設定為ssNone時,該屬性不執行操作
HideSelection True:編輯元件有焦點時,文字選擇的部分有視覺提示;False:即使編輯元件無焦點,文字選擇的部分仍然有視覺反應
ImeMode 設定該屬性可配置IME處理使用者按鍵的方法。對於亞洲語言字元,IME為前端輸入處理器
ImeName 設定該屬性可配置IME名稱
Lines 使用該方法可操作編輯元件中單行的文字
MaxLength 利用該屬性可限制使用者輸入的字元數,為0表示字元的長度沒有限制
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PlainText True:忽略RTF文字中的資訊編碼。 False:將RTF文字中的格式資訊編輯儲存或流出到檔案
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ReadOnly 確定使用者是否可以更改編輯元件的文字
ScrollBars 確定是否為多行文字編輯器新增水平或垂直的滾動條
SetAttributes 使用該屬性可獲得或設定目前選擇文字的字型格式
SetLength 使用該屬性可確定文字的字元長度
SelStart 讀取該屬性可確定第1個被選字元的位置,0表示第1個字元
SelText 設定該屬性可用新的字串代替選擇的文字
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
TabOrder 確定父元件的切換順序
TabStop 使用該屬性可允許或不允許用Tab訪問元件
Visible 確定元件是否可見
WantReturns 確定使用者是否可以在文字中插入返回字元
WantTabs 確定使用者是否可以在文字中插入製表符
WordWrap 確定編輯元件是否插入軟回車,以便文字在右邊距處換行

  下面介紹程式中TRichEdit元件的常用屬性。

# 4.1.1. DefAttributes屬性*

property DefAttributes: TTextAttributes;
1

  使用該屬性可獲得或設罝編輯元件中新插入文字時的預設字元格式,這是在特殊格式使用前的字元格式。一旦在文字中應用了特殊格式,從這一點開始就認為沒有預設字元的格式,即使字元格式匹配該屬性。

# 4.1.2. HideSelection屬性

property HideSelection: Boolean;
1
  • True:編輯元件有焦點時,文字的選擇部分有視覺指示。
  • False:即使編輯元件無焦點,文字的選擇部分仍然有視覺反應,結果使包含多個編輯元件的窗休較亂。

# 4.1.3. Lines屬性

property Lines: TStrings;
1

  使用該方法可操作編輯元件中的單行文字。

# 4.1.4. Paragraph屬性*

property Paragraph: TParaAttributes;
1

  讀取該屬性可獲得編輯元件中指定的段落格式資訊。

# 4.1.5. PlainText屬性

property PlainText: Boolean;
1
  • True:忽略RTF文字中的資訊編碼。
  • False:將RTF文字中的格式資訊編輯儲存或流出到檔案。

# 4.1.6. SelAttributes屬性

property SelAttributes: TTextAttributes;
1

  使用該屬性可獲得或設定目前選擇文字的字型格式。

# 4.1.7. SelLength屬性

property SelLength: Integer;
1

  讀取該屬性可確定選擇文字的字元長度。

# 4.1.8. SelStart屬性

property SelStart: Integer;
1

  讀取該屬性可確定第1個被選字元的位置,0表示第1個字元。

# 4.1.9. SelText屬性

property SelText: string;
1

  設定該屬性可用新的字串代替選擇的文字。

  • 應用
      如果沒有選擇的文字,但是編輯元件有焦點,設罝SelText可在游標處將新的字串插入到文字中。
procedure TMyHandler.BUTTON1CLICK;
//點選按鈕以替換
begin
  with FThis.RichEdit1 do
  begin
    SelText := FThis.Edit1.Text;
  end;
end;
1
2
3
4
5
6
7
8

# 4.2. 方法

  • TRichEdit元件主要方法列表
方法 功能描述
Clear 清除富文字編輯框中的文字內容
Add 向富文字編輯框中增加文字內容
FindText 使用該方法可在編輯元件中指定範圍的文字中查詢指定的字串
GetSelTextBuf 使用該方法可複製所選文字到字元緩衝區
Print 使用該方法可列印編輯元件的內容

# 4.2.1. Clear方法

procedure Clear; override;
1

  使用該方法可用空字串代替Text屬性,並刪除所有文字,刪除己選文字使用ClearSelection 方法。

  • 應用
      刪除所有文字並新增新文字。
procedure TMyHandler.BUTTON1CLICK;
//點選以清空文字並新增新文字
begin
  FThis.RichEdit1.Lines.Clear;
  FThis.RichEdit1.Lines.Add('歡迎使用愛招飛系列產品!');
end;
1
2
3
4
5
6

# 4.2.2. FindText方法*

  使用該方法可在編輯元件中指定範圍的文字中查詢指定的字串。

type
    TSearchType = (st Whole Word, stMatchCase);
    TSearchTypes = set of TSearchType;
function FindText(const SearchStr: string; StarlPos, Length: Integer; Options: TSearchTypes): Integer;
1
2
3
4

# 5. TTrackBar元件

  該元件是一個Windows滾動條封裝,用於調節區域或範圍。使用者可以對跟蹤條做進一步的處理,例如將其設定為垂直或水平,設定滑尺的高度及寬度,設定刻度單位,設定滑尺風格等。程式運行時可以用滑鼠來拖動滑尺到指定位置,也可以用游標鍵或PageUp或PageDown鍵移動。

# 5.1. 屬性

  • TTrackBar元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
BorderWidth 使用該屬性可獲得或設定元件的邊框寬度
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Frequency 該屬性用於設定刻度的單位
LineSize 使用該屬性指定滑動塊移動一個單位的距離
Max 設定滾動條的最終位置
Min 設定滾動條的起始位置
Orientation 設定跟蹤條是水平放置還是垂直放置
PageSize 使用該屬性指定與一個檢視相應的跟蹤條的距離
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
Position 設定滑尺的位置
PositionToolTip 確定顯示軌跡條位置的(可選)工具提示的位置
SelEnd 設定該屬性可確定SelStart開始選定的範圍長度
SelStart 指定選擇範圍起始點的位置
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
ShowSelRange 指定軌跡條是否顯示選擇範圍
SliderVisible 指定軌跡欄的滑塊是否可見
TabOrder 確定父元件的切換順序
TabStop 使用該屬性可允許或不允許用Tab訪問元件
ThumbLength 指定軌跡欄滑塊的長度
TickMarks 指定刻度線的位置
TickStyle 設定該屬性可確定跟蹤條是否顯示刻度線
Visible 確定元件是否可見

  下面介紹一下TTrackBar中的常用屬性。

# 5.1.1. Max屬性

property Max:integer;
1

  Max屬性用於設定TTrackBar元件中Position屬性的最大值,即滾動條的最終位置。

# 5.1.2. Min屬性

property Min: Integer;
1

  Min屬性用於設定TTrackBar元件中Position屬性的最小值,即滾動條的起始位置。

# 5.1.3. Position屬性

property Position: Integer;
1

  Position屬性代表了滑塊所在位置的值。

# 5.1.4. SelStart屬性

property SelStart: Integer;
1

  SelStart屬性用於設定滑塊拖動範圍的起始點。

# 5.1.5. SelEnd屬性

property SelEnd: Integer;
1

  SelEnd屬性用於設定滑塊拖動範圍的終止點。

# 5.1.6. Frequency屬性

property Frequency: Integer;
1

  Frequency屬性用於設定刻度標記的頻率,此頻率與取值範圍有關。

# 5.1.7. LineSize屬性

property LineSize: Integer;
1

  用於設定當按箭頭鍵時,TTrackBar元件的Position屬性增加或減少的值。按向下箭頭或左箭頭時,Position屬性值將按該屬性的值減少,按向上箭頭或右箭頭時,Position屬性值將按該屬性的值增加。

# 5.1.8. PageSize屬性

property PageSize: Integer;
1

  用於設定當按PageDown、PageUp鍵時或在TTrackBar元件上單擊時,TTrackBar元件的Position屬性增加或減少的值。按PageDown鍵時,Position屬性值減少一個PageSize屬性的值,按PageUp鍵時,Position屬性值將增加一個PageSize屬性的值。

  • 應用
      當移動滑塊時每移動一次的Position是10。
procedure TMyHandler.TRACKBAR1CHANGE;
//滑塊拖動時發生
begin
  FThis.Label1.Caption := IntToStr(FThis.TrackBar1.Position);
end;

procedure TMyHandler.BUTTON1CLICK;
//載入刻度
begin
  FThis.TrackBar1.Min := 0;
  FThis.TrackBar1.Max := 100;
  FThis.TrackBar1.PageSize := 10;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13

# 5.1.9. Orientation屬性

property Orientation: TtrackBarOrientation;
1

  用於定義TTrackBar元件是水平排列的還是垂直排列的。取值為trHorizontal表示是水平排列的,取值為trVertical表示是垂直排列的。

# 5.2. 事件

  • TTrackBar元件主要事件列表
事件 何時觸發
OnChange 在Position更改值后立即觸發該事件
OnContextPopup 當用戶右鍵單擊元件或以其他方式呼叫彈出功能表(例如使用鍵盤)時觸發該事件
OnDragDrop 使用者刪除正在拖動的對象時觸發該事件
OnDragOver 當用戶在元件上拖動對像時觸發該事件
OnEndDock 當對象的拖動結束后產生該事件
OnEndDrag 當對象的拖動結束后產生該事件
OnEnter 在元件接收輸入焦點時觸發該事件
OnExit 當輸入焦點從一個元件轉移到另一個元件時觸發該事件
OnKeyDown 當用戶在元件具有焦點時按任意鍵時觸發該事件
OnKeyPress 按下某個鍵時觸發該事件
OnKeyUp 使用者釋放已按下的鍵時觸發該事件
OnStartDock 當用戶開始拖動元件時觸發該事件
OnStartDrag 當用戶通過左鍵單擊元件並按住滑鼠按鈕開始拖動元件或其包含的對象時觸發該事件

# 5.2.1. OnChange事件

procedure TrackBarlChange(Sender: TObject);
1

  Trackbar改變時可以觸發OnChange事件。實體詳見PageSize屬性。

# 5.3. 方法

  • TTrackBar元件主要方法列表
方法 功能描述
SetTick 使用該方法可為跟蹤條在Value參數指定位置上放置一個刻度線,只有當TickStyle屬性設定為tsManual時,刻度線才有效

# 5.3.1. SetTick方法

procedure SetTick(Value:integer);
1

  使用該方法可為跟蹤條在Value參數指定位置上放置一個刻度線,只有當TickStyle屬性設定為tsManual時,刻度線才有效。


# 6. TProgressBar元件

  TProgressBar為進度條元件。使用TProgressBar可在窗體中新增進度條。進度條為使用者提供一個應用程式執行進度的可視的反饋。當程式執行時,矩形的進度條用系統高亮度的顏色逐漸從左到右填充。

# 6.1. 屬性

  • TProgressBar元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
BackgroundColor 設定並獲取進度條背景的顏色
BarColor 設定並獲取進度條突出顯示部分的顏色
BorderWidth 使用該屬性可獲得或設定元件的邊框寬度
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Hint 包含使用者將滑鼠移到元件上時可以顯示的文字字串
MarqueeInterval 選框動畫更新間隔的時間(以毫秒為單位)
Max 設定進度條的最大值
Min 設定進度條的最小值
Orientation 指定進度條是垂直還是水平方向
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
Position 指定進度條的當前位置
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
Smooth 指定進度條是平滑移動還是塊移動
SmoothReverse 設定並獲得顯示進度條進度減少的功能
State 設定並獲取進度條的當前狀態:pbsNormal,pbsError或pbsPaused
Step 指定呼叫StepIt方法時Position增加的量
Style 確定TProgressBar如何說明進度
TabOrder 確定父元件的切換順序
TabStop 使用該屬性可允許或不允許用Tab訪問元件
Visible 確定元件是否可見

# 6.1.1. Smooth屬性

property Smooth:Boolean;
1

  指定進度條是平滑移動還是塊移動。

  • False:塊移動

  • True:平猾移動

  • 應用
      指定進度條的移動方式。

procedure TMyHandler.BUTTON2CLICK;
//設定進度條的移動方式
begin
  FThis.ProgressBar1.Smooth := False; //塊移動
  FThis.ProgressBar2.Smooth := True; //平滑移動
end;

procedure TMyHandler.BUTTON1CLICK;
//執行進度條增加過程
begin
  FThis.ProgressBar1.StepBy(100);
  FThis.ProgressBar2.StepBy(100);
end;
1
2
3
4
5
6
7
8
9
10
11
12
13

# 6.1.2. Step屬性

property Step: Integer;
1

  該屬性用於指定,呼叫Step方法時Position的步長。

# 6.2. 方法

  • TProgressBar元件主要方法列表
方法 功能描述
StepBy 呼叫該方法可使Position的值增加一定的值
StepIt 呼叫該方法可使Position的值增加一定的值,增量即Step屬性的值

# 6.2.1. StepBy方法

procedure StepBy(Delta:Integer);
1

  StepBy方法可指定ProgressBar的增量,如果要設定預設的增量的,請呼叫StepIt方法。StepBy方法實體詳見Smooth屬性

# 6.2.2. StepIt方法

procedure Steplt;
1

  StepIt方法用於增加固定的進度條增量,固定增量請在Step屬性中設定,每次呼叫StepIt均會增加該固定增量。

FThis.ProgressBar1.StepIt;
1

# 7. TUpDown元件

  使用TUpDown可在窗體中新增上下元件。上下元件由一對箭頭按鈕組成,用於建立數值增減的上下箭頭,它允許使用者通過單擊箭頭按鈕改變數值大小。例如將UpDown與一個Edit元件相關聯,相當於一個SpinEdit元件的功能。程式運行后,使用者單擊向上或向下按鈕時,Edit中的數字將連續變化。

# 7.1. 屬性

  • TUpDown元件主要屬性
屬性 功能說明
AlignButton 指定上下元件相對於其伴隨元件的左右位置
Anchors 指定元件如何停放在父窗體中
ArrowKeys 使用該屬性可指定上下元件是否相應鍵盤輸入(上下方向鍵),上下元件和同伴元件相關聯時才可使用這個屬性
Associate 指定用於連線上下元件的伴隨元件
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Hint 包含使用者將滑鼠移到元件上時可以顯示的文字字串
Increment 指定每次按下向上或向下按鈕時位置值的更改量
Max 指定Position屬性的最大值
Min 指定Position屬性的最小值
Orientation 指定箭頭按鈕鍵指向的方向
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
Position 使用該屬性可獲得或改變上下元件的值,這個屬性必須在Min和Max之間
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
TabOrder 確定父元件的切換順序
TabStop 使用該屬性可允許或不允許用Tab訪問元件
Thousands 確定在十進制字串的每三個數字之間是否顯示千位分隔符
Visible 確定元件是否可見
Wrap 使用該屬性可指定上下元件是否處於由Max和Min屬性指定的連線循環的範圍內

  TUpDown元件的主要屬性如下:

# 7.1.1. Associate屬性

property Associate: TWinControl;
1

  該屬性用於指定UpDown元件所依附的元件類,如Edit1等。運行時UpDown元件自動出現在依附元件的左側或右側。實體詳見Max屬性。

# 7.1.2. AlignButton屬性

type TUDAlignButton = (udLeft, udRight); 
property AlignButton: TUDAlignButton;
1
2

  AlignButton屬性用於指定UpDown元件出現依附元件的位置,取值為udLefi時出現在左側,取值為udRight時出現在右側。

# 7.1.3. ArrowKeys屬性

property ArrowKeys: Boolean;
1

  該屬性用於確定是否響應鍵盤方向鍵的輸入。

  • True:響應鍵盤輸入。
  • False:不響應鍵盤輸入。

# 7.1.4. Increment屬性

property Increment: Integer;
1

  該屬性用於指定單擊按鈕時,Position屬性的增減數量。

# 7.1.5. Max屬性

property Min: SmallInt;
1

  Max屬性用於設定TUpDown元件中Position屬性的取值範圍的上限值。

  • 應用
      設定上限為10,下限為1。
procedure TMyHandler.BUTTON1CLICK;
//繫結Edit與UpDown
begin
  FThis.UpDown1.Associate := FThis.Edit1;
  FThis.UpDown2.Associate := FThis.Edit2;
  FThis.UpDown1.Max := 10;
  FThis.UpDown1.Min := 1;
  FThis.UpDown1.Position := 9; 
  
  FThis.UpDown2.Max := 10;
  FThis.UpDown2.Min := 1;
  FThis.UpDown2.Position := 9; 
  FThis.UpDown2.Wrap := True;  //設定循環顯示
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14

# 7.1.6. Min屬性

property Min: SmallInt;
1

  Min屬性用於設定TUpDown元件中Position屬性的最小值。實體詳見Max屬性。

# 7.1.7. Orientation屬性

type TUDOrientation=(udHorizontal,udVertical); 
property Orientation:TUDOrientation;
1
2

  元件的排列方式。

  • udHorizontal:箭頭按鈕左也並排放置。
  • udVertical:箭頭按鈕上下垂直放置。

# 7.1.8. Position屬性

property Position: Smalllnt;
1

  Position屬性代表了元件中顯示內容所在位置的值。使用該屬性可獲得或改變上下元件的值,這個屬性必須在Min和Max之間。實體詳見Max屬性。

# 7.1.9. Warp屬性

property Wrap: Boolean;
1

  設定是否在最小值和最大值之間循環顯示。實體詳見Max屬性。使用該屬性可指定上下元件是否處於由Max和Min屬性指定的連續循環的範圍內。如果為True, 當用戶增加Position超過Max的值時,Position的值變為Min屬性的值;反之變為Max 屬性的值。

  • True:循環;
  • False:不循環。

# 7.2. 事件

  • TTrackBar元件主要事件列表
事件 何時觸發
OnChanging 使用者單擊上下元件的箭頭按鈕時,或當試圖改變Position的值時, 產生這個事件
OnChangeingEx 上下元件的位置將要改變時產生該事件
OnClick 當元件按鈕被點選時觸發事件

# 7.2.1. OnChanging事件

type TUDChangingEvent-procedure(Sender:Tobject;var AllowChange:Boolean) of object; 
property OnChanging:TUDChanginEvent;
1
2

  使用者單擊上下元件的箭頭按鈕時,或當試圖改變Position的值時,產生這個事件。

# 7.2.2. OnChangingEx事件

type TUDChangingEventEx = procedure (Sender: TObject; var AllowChange: Boolean; 
  New Value: Smalllnt; Direction: TUpDownDirection) of object;
property OnChangingEx: TUDChanginEventEx;
1
2
3

  上下元件的位置將要改變時產生該事件,編寫其事件處理程式可有條件地不允許改變 Position的值。設定AllowChange參數為False可防止改變目前Position的值。

# 7.2.3. OnClick事件

type
  TUDBtnType = (btNext, btPrev);
  TUDCIickEvent = procedure (Sender: TObject; Button: TUDBtnType) of object; 
property OnClick: TUDCIickEvent;
1
2
3
4

  當用戶單擊箭頭按鈕時產生該事件,編寫其事件處理程式可執行特定的處理。


# 8. THotKey元件

  THotKey元件用於使使用者在元件界面上設定熱鍵,設定的熱鍵用於呼叫其他需要快捷操作的功能。使用THotKey可建立一個作為快捷鍵使用的組合鍵,可指定多個修飾鍵,如Ctrl、Alt或Shift等,它們和另外一個非修飾鍵,如字元鍵或數字鍵組成一個熱鍵。

# 8.1. 屬性

  • THotKey元件主要屬性
屬性 功能說明
Anchors 該屬性指定元件如何停放在其父窗體中
AutoSize 使用該屬性可使熱鍵元件上的字型完整顯示
BiDiMode 使用該屬性可謂元件指定雙向模式,控制讀文字的順序、垂直滾動條的位置以及是否改變對齊方式。對齊方式不改變元件包含的數量、日期、事件和目前數值
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
Hint 元件提示
HotKey 使用該屬性可設定或改變熱鍵相關的組合鍵,Alt+A為預設值
InvalidKeys 使用該屬性可選擇不允許的組合鍵
Modifiers 規定與非輔助鍵搭配的輔助按鍵
ParentBiDiMode 規定元件是否繼承父元件的BiDiMode
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
PopupMenu 將元件與功能表欄中的位置繫結
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
TabOrder 規定元件在父元件中的換欄位置序號
TabStop 使用該屬性可允許或不允許用Tab鍵訪問元件
Visible 規定該元件在窗體上是否可見

# 8.1.1. AutoSize屬性

property AutoSize: Boolean;
1

  使用該屬性可使熱鍵元件上的字型完整顯示,為True時,熱鍵的高度改變以顯示鍵入其中的鍵值;否則熱鍵保持同一高度,不考慮字型的變化。

# 8.1.2. HotKey屬性

property Hotkey: TShortCut;
1

  使用該屬性可設定或改變與熱鍵相關的組合鍵,Alt+A為預設值。

  • 應用
      要修改這個屬性的值,可直接編輯或設罝Modifiers屬性值。在程式運行時,當熱鍵有焦點且使用者按有效的組合鍵時,重新設定該屬性。目前實體需要使用TMainMenu元件建立功能表。
procedure TMyHandler.MENUITEM2CLICK;
//設定功能表欄快捷鍵
begin
  FThis.MenuItem2.ShortCut := FThis.HotKey1.HotKey;
end;

procedure TMyHandler.BUTTON1CLICK;
//設定快捷鍵
begin
  FThis.HotKey1.Modifiers := [hkCtrl];
  FThis.HotKey1.InvalidKeys := [hcShift, hcAlt];
end;
1
2
3
4
5
6
7
8
9
10
11
12

# 8.1.3. InvalidKeys屬性

type
  THKInvalidKey = (hcNone, hcShift, hcCtrl, hcAlt, hcShiftCtrl, hcShiftAlt, hcCtrlAlt, hcShiftCtrlAIt);
  THKInvalidKeys = set of THKInvalidKey; 
property InvalidKeys: THKInvalidKeys;
1
2
3
4

  使用該屬性可選擇不允許的組合鍵。如果設定了該屬性,則預設組合鍵將在Modifiers屬性中指定。選擇無效鍵時,預設組合鍵顯示在其位置上。

  • hcNone:沒有無效的組合鍵(預設);
  • hcShift: Shift鍵用做組合鍵時無效(預設);
  • hcCtrl: Ctrl鍵用做組合鍵時無效;
  • hcAlt: Alt鍵用做組合鍵時無效;
  • hcShiftCtrl: ShiftCtrl鍵用做組合鍵時無效;
  • hcShiftAlt: ShiftAlt鍵用做組合鍵時無效;
  • hcCtrlAlt: CtrlAlt鍵用做組合鍵時無效;
  • hcShiftCtrlAlt: ShiftCtrlAlt 鍵用做組合鍵時無效。   用法如下:
FThis.Hotkey1.InvalidKeys := [hcNone];
FThis.HotKey2.InvalidKeys := [hcShift];
FThis.HotKey3.InvalidKeys := [hcCtrl];
FThis.HotKey4.InvalidKeys := [hcAlt];
FThis.HotKey5.InvalidKeys := [hcShiftCtrl];
FThis.HotKey6.InvalidKeys := [hcShiftAlt];
FThis.HotKey7.InvalidKeys := [hcCtrlAlt];
FThis.HotKey8.InvalidKeys := [hcShiftCtrlAlt];
1
2
3
4
5
6
7
8

# 8.1.4. Modifiers屬性

type
  THKModifier = (hkShift, hkCtrl, hkAlt, hkExt); 
  THKModifiers = set of THKModifier; 
property Modifiers: THKModifiers;
1
2
3
4

  使用該屬性可為熱鍵選擇組合鍵。

  • hcShift: Shift鍵用做組合鍵;

  • hcCtrl: Ctrl鍵用做組合鍵;

  • hcAlt: Alt鍵用做組合鍵(預設);

  • hcExt: Extra鍵用做組合鍵。

  • 應用

procedure TMyHandler.BUTTON1CLICK;
begin
  FThis.HotKey1.Modifiers := [hkShift];
  FTHis.HotKey2.Modifiers := [hkCtrl];
  FThis.HotKey3.Modifiers := [hkAlt];
  FThis.HotKey4.Modifiers := [hkExt];
end;
1
2
3
4
5
6
7

# 8.2. 事件

  • THotKey元件主要事件列表
事件 何時觸發
OnChange 當快捷鍵的屬性發生變化時觸發該事件
OnEnter 當元件獲取焦點時觸發該事件
OnExit 當元件失去焦點時觸發該事件

# 9. TAnimate元件

  TAnimate元件用於展示動畫片段、一系列的圖片幀,元件可從檔案、資原始檔或是一系列標準動畫中載入動畫。要設定一段動畫,請配置FileName,CommonAVI,ResName,ResID屬性。

# 9.1. 屬性

  • TAnimate元件主要屬性
屬性 功能說明
FrameCount AVI視訊片段中的視訊總幀數
FrameHeight 動畫中每幀圖片的畫素高度
FrameWidth 動畫中每幀圖片的畫素寬度
Open 動畫是否載入到記憶體中
ResHadle 規定AVI片段的資原始檔模組的窗體控制代碼
ResID 動畫資原始檔的資源ID
ResName 動畫的資源名稱
Active 元件是否播放播放動畫
Align 決定容器(父元件)對該元件的歸屬方式
Anchors 該屬性指定元件如何停放在其父窗體中
AutoSize 元件尺寸是否自適應于動畫
BorderWidth 使用該屬性可獲得或設定元件邊框的寬度
Center 規定動畫是否居中
Color 規定元件的背景色
CommonAVI 動畫元件是否能播放在Shell32.dll中提供的通用動畫
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
FileName 規定包含動畫的檔名稱
ParnetColor 元件要使用與其父元件相同的顏色
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
Repetitions 規定動畫幀序列的重複播放次數
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
StartFrame 當動畫元件被啟用時的起始幀
StopFrame 當動畫元件被啟用時的最末幀
Timers 是否使用計時器進行幀播放
Transparent 確定目前的背景顏色是否要與Color屬性的值相匹配,即是否產生透明效果。
Visible 規定該元件在窗體上是否可見

# 9.1.1. Active屬性

property Active: Boolean;
1

  該屬性用於確定TAnimate控制元件是否播放動畫,當Active設定為True時,TAnimate開始播放動畫,設定為False時,TAnimate停止播放動畫。

# 9.1.2. Center屬性

property Center: Boolean;
1

  該屬性用於確定TAnimate控制元件是否居中播放動畫。

# 9.1.3. CommonAVI屬性

type TCommonAVI = (aviNone, aviFindFolder, aviFindFile, aviFindComputer, 
  aviCopyFiles, aviCopyFile,aviRecycleFile, aviEmptyRecycle, aviDeleteFile);
property CommonAVI: TCommonAVI;
1
2
3

  該屬性用於確定TAnimate控制元件是否播放Shell32.dll中的公用動畫。當將CommonAVI設定為aviNone之後,便可以通過FileName屬性指定播放的動畫檔名稱。

  • aviNone:採用自定義動畫
  • aviFindFolder:顯示系統查詢目錄動畫
  • aviFindFile:顯示系統中查詢檔案的動畫
  • aviFindComputer :顯示查詢計算機的動畫
  • aviCopyFiles:益示覆制多個檔案的動畫
  • aviCopyFile:顯示覆制檔案的動畫
  • aviRecycleFile:將檔案放入回收站的動畫
  • aviEmptyRecycle:清空回收站的動畫
  • aviDeleteFile:刪除檔案動畫

# 9.1.4. FileName屬性

property FileName: TFileName; 
type TFileName = type string;
1
2

  該屬性用於指定包含動畫的檔案。

# 9.1.5. FrameCount屬性

property FrameCount: Integer;
1

  該屬性用於指定TAnimate控制元件中播放動畫的總數。

# 9.1.6. FrameHeight屬性

property Framelleight: Integer;
1

  該屬性用畫素表示TAnimate控制元件中影象的高度。

# 9.1.7. FrameWidth屬性

property FrameWidth: Integer;
1

  該屬性用畫素表示TAnimate控制元件中影象的寬度。

# 9.1.8. Open屬性

property Open: Boolean;
1

  該屬性用於指定動畫是否已經載入記憶體。

# 9.1.9. Repetitions屬性

property Repetitions: Integer;
1

  該屬性用於設定動畫循環播放的次數。

# 9.1.10. ResName屬性

property ResName: string;
1

  該屬性用於指定動副資源的名稱。

# 9.1.11. StartFrame屬性

property StartFrame: Smalllnt;
1

  該屬性用於指定,TAnimate控制元件啟用時的起始幀。

# 9.1.12. StopFrame屬性

property StopFrame: Smalllnt;
1

  該屬性用於指定當TAnimate控制元件啟用時的最末幀。

# 9.1.13. Transparent屬性

property Transparent: Boolean;
1

  該屬性用於確定,前幀的背景顏色是否要與Color屬性的值相匹配,即是否產生透明效果。

# 9.2. 事件

  • TAnimate元件主要事件列表
事件 何時觸發
OnClose 當元件被關閉時觸發該事件
OnOpen 當元件打開時觸發該事件
OnStart 當開始播放動畫時觸發該事件
OnStop 當動畫結束播放時觸發該事件

# 9.3. 方法

  • TAimate元件主要方法列表
方法 功能描述
AfterConstruction 執行對象的最後一個構造后自動呼叫該方法,在應用程式中不要直接呼叫該方法。在TObject中實現這個方法不執行任何操作。過載該方法可在建立對像後設定後設定一些行為
Assign 複製Source參數指定的對象
Play 顯示指定的幀序列
Reset 重置StartFrame和StopFrame屬性顯示動畫中的第一幀
Seek 顯示動畫剪輯中的指定幀
Stop 當在播放時停止動畫元件的播放

# 9.3.1. Play方法

procedure Play(FromFrame:Word;ToFrame:Word;Count:Integer);
1

  呼叫Play方法視同為設定StartFrame屬性值至FromFrame,設定StopFrame屬性值至ToFrame,Repetitions對應為Count,設定Active屬性為True。

  • FromFrame:播放序列起始幀。
  • ToFrame:播放序列結束幀。
  • Count:循環播放次數,0表示無限次循環。

# 9.3.2. Reset方法

procedure Reset;
1

  重置StartFrame和StopFrame屬性顯示動畫中的第一幀。

# 9.3.3. Seek方法

procedure Seek(Frame:Smallint);
1

  Seek方法用於播放序列中的一幀,Frame參數的值必須小於等於該元件的FrameCount屬性值。當動畫元件未被啟用時,呼叫該方法視同將該元件的Open屬性設定為True。

# 9.3.4. Stop方法

procedure Stop;
1

  TAnimate控制元件正在播放動畫時,Stop方法用於停止播放。


# 10. TDateTimePicker元件

  TDateTimePicker元件為使用者提供了輸入日期和時間的列表框。當TDateTimePicker元件處於dmComboBox日期模式(DateMode為dmComboBox)下,它類似於一個列表框或組合框,只是下拉選單部分顯示日曆圖表,使用者能夠通過日曆圖表選擇日期。

# 10.1. 屬性

  • TDateTimePicker元件主要屬性
屬性 功能說明
DateTime 顯示目前日期時間的值,顯示的內容取決於Kind屬性
DroppedDown 事件選擇元件下拉(彈出日曆)
Align 決定容器(父元件)對該元件的歸屬方式
Anchors 該屬性指定元件如何停放在其父窗體中
BevelEdges 使用該屬性可獲得或設定元件成斜角的邊緣
BevelInner 使用該屬性可指定內斜角是否具有凸、凹或平坦的外觀
BevelKind 使用該屬性可修改斜角的風格、即斜角的傾斜程度
BevelOuter 使用該屬性可指定外斜角是否具有凸、凹或平坦的外觀,外斜角直接顯示在邊框內或內斜角的外面
BevelWidth 使用該屬性可指定內外斜角的畫素寬度
BiDiMode 使用該屬性可為元件指定雙向模式,控制文字的順序、垂直滾動條的位置以及是否改變對齊方式
CalAlignment 確定下拉日曆的對齊方式
CalColors 使用該屬性可獲得或設定日曆背景、月背景、文字、標題背景、標題文字和跟蹤文字的顏色
Checked 確定TDateTimePicker元件中的檢查框是否處於選中狀態
Color 元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
Date 日期選擇框中預設的日期
DateFormat 日期的顯示格式
DateMode 確定日期時間的選擇方式
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
DragCursor 當拖動元件時顯示的滑鼠指針影象型別
DragKind 使用該屬性可獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 使用該屬性可控制使用者何時可拖動元件
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
Font 規定元件中的文字字型屬性
Format 規定日期時間字元的顯示格式
ImeMode 設定該屬性可配置IME處理使用者按鍵的方法。對於亞洲語言字元,IME為前端輸入處理器
ImeName 設定該屬性可配置IME名稱
Kind 規定當前元件是顯示日期還是顯示時間
MaxDate 規定可輸入日期的最大值
MinDate 規定可輸入日期的最小值
ParentBiDiMode 使用該屬性可獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentFont 規定元件是否繼承父元件的字型屬性資訊
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
ParseInput 確定OnUserInput事件是否被啟用
PopupMenu 將元件與功能表欄中的位置繫結
ShowCheckbox 顯示TDateTimePicker元件中的覈取方塊
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
TabOrder 規定元件在父元件中的換欄位置序號
TabStop 使用該屬性可允許或不允許用Tab鍵訪問元件
Time 顯示由使用者輸入的時間
Visible 規定該元件在窗體上是否可見

# 10.1.1. CalColors屬性

property CalColors: TMonthCalColors;
1

  CalColors屬性用於設定TDateTimePicker元件中日曆部分的顏色,如日曆背景顏色、月份背景顏色、文字顏色、標題背景顏色、標題文字顏色、日曆頁面其餘月份(目前月之外)的字型顏色。

  具體用法如下:

with FThis.DateTimePickerl do
begin
    CalColors.BackColor := S00C4FFFF;
    CalColors.TextCoIor := clRed;
    CalColors.TitleBackColor :=S00FFFFC4 ;
    CalColors.TitleTextColor := clBlue;
    CalColors.MonthBackColor := S00FF86FF;
    CalColors.TrailingTextColor := clLime;
end;
1
2
3
4
5
6
7
8
9

# 10.1.2. Date屬性

property Date: TDate;
1

  Date屬性用於確定在日曆中標記的日期。使用Date屬效能夠讀取或設定日曆中標記的日期,日期值必須在MaxDate與MinDate屬性值之間。

# 10.1.3. DateFormat屬性

type TDTDateFormat = (dfShort,dfLong); 
property DateFormat: TDTDateFormat;
1
2

  DateFormat屬性用於指定日期格式,可選值如下。

  • dfShort: 日期格式採用Windows控制面板中的短日期格式。
  • dfLong: 日期格式採用Windows控制面板中的長日期格式。

# 10.1.4. DateTime屬性

property DateTime: TDateTime;
1

  使用DateTime屬效能夠設定和讀取系統日曆中標記的日期和時間。DateTime屬性的屬性值必須在MaxDate與MinDate屬性值之間。

# 10.1.5. Format屬性

property Format: String;
1

  Format屬性用於標識U期和時間的顯示格式,可選值如下。

  • d: 日期只顯示天數,沒有前導0,如8。
  • dd: H期只顯示天數,有前導0,如08。
  • ddd: 3個字元的星期格式,由全域性變景ShortdayNames確定,預設格式如星期二。
  • dddd: 完整的星期格式,由全域性變景LongDateNames確定,預設格式如星期二。
  • h:只顯示時間部分的小時,為12進位制格式,沒有前導0,如8。
  • hh:只顯示時間部分的小時,為12進位制格式,有前導0,如08。
  • H:只顯示時間部分的小時,為24進位制格式,沒有前導0,如8。
  • HH:只顯示時間部分的小時,為24進位制格式,有前導0,如08。
  • m:只顯示時間部分的分鐘,沒有前導0,如9。
  • mm:只顯示時間部分的分鐘,有前導0,如09。
  • M:只顯示U期部分的月,沒有前導0,如8。
  • MM:只顯示(=1期部分的月,有前導0,如08。
  • MMM: 3個字元的月簡寫,如「十一月」。
  • MMMM:月名全寫。
  • t:表示上午/下午(AM/PM)的簡寫,如A或P。
  • tt:表示上午/下午(AM/PM)的全寫,如AM或PM。
  • yy:顯示年份的后兩位,如2001將簡寫為01。
  • yyyy:媼示年份的全稱,如2001。

# 10.1.6. Kind屬性

type TDateTimeKind = (dtkDate, dtkTime); 
property Kind: TDateTimeKind;
1
2

  Kind屬性用於確定TDateTimePicker元件顯示日期還是時間,可選值如下。

  • dtkDate: TDateTimePicker 元件顯示日期部分。
  • dtkTime: TDateTimePicker 元件顯示時間部分。

# 10.1.7. MaxDate屬性

property MaxDate: TDate;
1

  MaxDate屬性用於設定使用者在日曆中滾動的最大日期。使用MaxDate屬效能夠限制使用者在 TDateTiemPicker元件中編輯的最大時間。

# 10.1.8. MinDate屬性

property MinDate: TDate;
1

  MaxDate屬性用於設定使用者在日曆中滾動的最小日期。使用MinDate屬效能夠限制使用者在 TDateTiemPicker元件中編輯的最小時間。

# 10.1.9. Time屬性

type TTime = type TDateTime; 
property Time: TTime;
1
2

  Time屬性用於確定使用者輸入的時間。只有在Kind屬性為dtkTime時,TDateTimePicker元件才會顯示時間。如果TDateTimePicker元件的Kind屬性為dtkDate,設定Time屬性,時間不會顯示在TDateTimePicker元件中,如果要檢視Time屬性值,需要進行日期格式化(使用FormatDateTime 函式)。

# 10.2. 事件

  • TDateTimePicker元件主要事件列表
事件 何時觸發
OnChange 當時間或日期輸入時觸發該事件
OnClick 當用戶點選目前元件時觸發該事件
OnCloseUp 當下拉日期框關閉時觸發該事件
OnUserInput 當用戶直接向日期選擇編輯框中鍵入時觸發該事件

# 10.3. 方法

  • TDateTimePicker元件主要方法列表
方法 功能描述
BoldDays 編輯一組日期數據,應用於OnGetMonthInfo事件處理過程
procedure BoldDays(Days: array of Long Word; var MonthBoldlnfo: LongWord);
1

  BoldDays方法用於編輯一組日期數據,應用於OnGetMonthlnfo事件處理過程。使用BoldDays方法能夠為目前月份設定一組日期,這些日期將以粗體顯示。由BoldDays方法返回的值(MonthBoldlnfo)能夠作為 OnGetMonthInfo 事件的 MonthBoldInfo 參數。


# 11. TMonthCalendar元件

  使用TMOnthCalendar元件可以通過標準的日曆界面來確定一個日期或一個日期範圍,TMonthCalendar根據系統的地區顯示日期(忽略BiDiMode設定)。

# 11.1. 屬性

  • TMonthCalendar元件主要屬性
屬性 功能說明
Align 決定容器(父元件)對該元件的歸屬方式
Anchors 該屬性指定元件如何停放在其父窗體中
AutoSize 使元件大小自動適應元件中的內容
BiDiMode 使用該屬性可為元件指定雙向模式,控制文字的順序、垂直滾動條的位置以及是否改變對齊方式
BorderWidth 使用該屬性可獲得或設定元件邊框的寬度
CalColors 包含日曆各部分的顏色設定
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
DragCursor 當拖動元件時顯示的滑鼠指針影象型別
DragKind 使用該屬性可獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 使用該屬性可控制使用者何時可拖動元件
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
Font 規定元件中的文字字型屬性
ImeMode 設定該屬性可配置IME處理使用者按鍵的方法。對於亞洲語言字元,IME為前端輸入處理器
ImeName 設定該屬性可配置IME名稱
MaxDate 規定可輸入日期的最大值
MaxSelectRange 當MultiSelect屬性為True時,使用該屬性可限制可選日期
MinDate 規定可輸入日期的最小值
MultiSelect 元件是否可以選擇多個日期
ParentBiDiMode 使用該屬性可獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentFont 規定元件是否繼承父元件的字型屬性資訊
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
PopupMenu 將元件與功能表欄中的位置繫結
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
ShowToday 是否在日曆底部顯示今天的日期
ShowTodayCircle 是否在日曆中圈出今天的日期
TabStop 使用該屬性可允許或不允許用Tab鍵訪問元件
Visible 規定該元件在窗體上是否可見
WeekNumbers 是否在日曆左側顯示對應的周(星期)數

# 11.1.1. Date屬性

property Date:Tdate;
1

  使用該屬性可獲得或設定日曆中有標記的日期。

# 11.1.2. EndDate屬性

property EndDate:Date;
1

  使用該屬性可獲得或設罝日曆上有標記的最後選中的日期。

# 11.1.3. FirstDayOfWeek屬性

property FirstDayOfWeek: TcalDayOfWeek;
1

  使用該屬性可獲得或設定日曆中周的第1天。

# 11.1.4. MaxSelectRange屬性

property MaxSelectRange: Integer;
1

  當MultiSelect屬性為True時,使用該屬性可限制可選日期。若要限制日期範圍時,則使用MaxDate 和MinDate屬性。

# 11.1.5. MultiSelect屬性

property MultiSelect: Boolean;
1

  使用該屬性可指出日曆表示的是單日期,還是個範圍的日期。為True時,指定從Date到EndDate的一個範圍的日期;否則只指定Date屬性的值。

# 11.1.6. ShowToday屬性

property ShowToday: Boolean;
1

  該屬性用於確定今天日期足否顯示在日曆的下面。True:顯示。False:隱藏。

# 11.1.7. ShowTodayCircle屬性

property ShowTodayCircle: Boolean;
1

  使用該屬性可指出日曆上今天的日期(根據系統時間確定)是否用圓圈起。

# 11.1.8. WeekNumbers屬性

property WeekNumbers: Boolean;
1

  是否顯示週數。

  • True:週數顯示在日曆的右邊。
  • False:週數不顯示在日曆的右邊.

# 11.2. 事件

  • TMonthCalendar元件主要事件列表
事件 何時觸發
OnClick 當時間或日期輸入時觸發該事件
OnGetMonthInfo 當日歷中顯示一個新月份時觸發該事件

# 12. TTreeView元件

  TTreeView元件是樹狀檢視元件,表示一個顯示專案分層列表的視窗,用於建立一個多層次關係的樹狀顯示。使用TTreeView元件可以在窗休中新增樹狀檢視視窗,樹狀檢視元件中的節點由一個標籤和一定數量的可選點陣圖組成。每個節點都有一個與其相關的子節點列表,使用者單擊節點,可擴充套件或壓縮與子節點相關的列表。

# 12.1. 屬性

  • TTreeView元件主要屬性
屬性 功能說明
Align 決定容器(父元件)對該元件的歸屬方式
Anchors 該屬性指定元件如何停放在其父窗體中
AutoExpand 指定樹狀檢視中是否根據選擇自動展開或摺疊。為True時展開;否則摺疊。
BevelEdges 使用該屬性可獲得或設定元件成斜角的邊緣
BevelInner 使用該屬性可指定內斜角是否具有凸、凹或平坦的外觀
BevelKind 使用該屬性可修改斜角的風格、即斜角的傾斜程度
BevelOuter 使用該屬性可指定外斜角是否具有凸、凹或平坦的外觀,外斜角直接顯示在邊框內或內斜角的外面
BevelWidth 使用該屬性可指定內外斜角的畫素寬度
BiDiMode 使用該屬性可為元件指定雙向模式,控制文字的順序、垂直滾動條的位置以及是否改變對齊方式
BorderStyle 確定樹狀檢視元件是否有邊框
BorderWidth 使用該屬性可獲得或設定元件邊框的寬度
ChangeDelay 確定選擇節點和OnChange事件發生之間的延時,單位為ms
Color 規定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 規定元件的視覺外觀是3D還是2D
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
DragCursor 當拖動元件時顯示的滑鼠指針影象型別
DragKind 使用該屬性可獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 使用該屬性可控制使用者何時可拖動元件
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
Font 規定元件中的文字字型屬性
HideSelection 當焦點移至其他元件時原結點是否仍繼續保持選擇狀態
HotTrack 當滑鼠移動至列表專案上時列表專案是否高亮顯示
Images 使用該屬性可提供顯示在節點標籤左邊的使用者點陣圖列表,單個節點通過設定其ImageIndex屬性指定這個列表中的單個影象
Indent 利用該屬性可以確定展開子結點相對於其展開的父結點的畫素縮排量
Items 列出顯示在檢視元件中的獨立結點,樹狀檢視中的單個結點都是TTreeNode對像
MultiSelect 設定該屬性可以指定使用者能否利用Ctrl和Shift鍵依次選中多個結點
MultiSelectStyle 當MultiSelect屬性為True時,該屬性確定多選擇結點如何工作,它必須包含下列值之一:msControlSelect、msShiftSelect、msVisibleOnly和msSiblingOnly
ParentBiDiMode 使用該屬性可獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 規定元件是否繼承父元件的Color屬性
ParentCtl3D 規定元件是否繼承父元件的Ctl3D屬性
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentFont 規定元件是否繼承父元件的字型屬性資訊
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
PopupMenu 將元件與功能表欄中的位置繫結
ReadOnly 規定使用者是否可以編輯結點標籤
RightClickSelect 使用該屬性可允許Selected屬性指定右擊按鈕所選的結點
RowSelect 設定該屬性為True,當結點整行被選中時是否高亮顯示
Selected 讀取該屬性可訪問樹狀檢視中所選擇的結點
SelecttionCount 該屬性返回目前所選擇的結點數
Selections 該屬性返回一個選擇的結點數
ShowButtons 是否在每個父結點的左側顯示「=」和「-」按鈕,使用者可單擊按鈕展開或摺疊子項,與雙擊父項的選擇相同
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
ShowLines 是否顯示子結點與父結點之間的連線線
ShowRoot 是否顯示連線到根結點的連線線
SortType 確定樹狀檢視的結點是否自動排序
StateImages 提供一組表示樹狀檢視結點狀態的點陣圖,狀態影象作為附加的影象顯示在專案圖表的左邊
TabOrder 規定元件在父元件中的換欄位置序號
TabStop 使用該屬性可允許或不允許用Tab鍵訪問元件
Time 顯示由使用者輸入的時間
ToolTips 設定該屬性為True,可指定樹狀檢視的專案有工具提示(Help Hints)在OnHint事件處理程式中,使用Hint屬性可指定ToolTip的文字
TopItem 指定樹狀檢視的最頂層結點,當其改變時,樹狀檢視垂直滾動,以使指定的結點在樹狀檢視中處於頂層
Visible 規定該元件在窗體上是否可見

# 12.1.1. AutoExpand 屬性*

property AutoExpand: Boolean;
1

  該屬性指定樹狀檢視中是否根據選擇自動展開或摺疊。為True時展開;否則摺疊。

# 12.1.2. BorderStyle 屬性

property BorderStyle: TBorderStyle;
1

  該屬性確定樹狀檢視元件是杏有邊框,取值如下。

  • bsNone:無邊框。
  • sSingle:單細線邊框。

  程式碼示例

FThis.TreeView1.BorderStyle := bsNone;
FThis.TreeView1.BorderStyle := bsSingle;
1
2

# 12.1.3. Canvas 屬性

property Canvas: TCanvas;
1

  使用該屬性可在OnCustomDraw和OnCustomDrawltem事件處理程式的畫布上繪圖。

# 12.1.4. DropTarget 屬性

property DropTarget: TTreeNode;
1

  讀取該屬性可確定樹狀檢視中節點是否以拖放操作的目標顯示。當在樹狀圖中指定一個節點作為拖放操作的目標時,可設定該屬性。此時,應用程式還必須處理通過指定的節點接收拖動對象的實際邏輯。

# 12.1.5. HideSelection 屬性

property HideSelection: Boolean;
1

  使用該屬性可指定樹狀檢視的當前選擇沒有焦點時足否顯示,為True時,所選節點與其他節點沒有區別,直到焦點返回該元件;否則節點總是顯示為被選狀態。

# 12.1.6. HotTrack 屬性

property IIotTrack: Boolean;
1

  該屬性為True時,滑鼠經過列表項上時以高亮顯示;否則不以高亮顯示。

# 12.1.7. Images 屬性

property Images: TCustomlmageList;
1

  使用該屬性可提供顯示在節點標籤左邊的使用者點陣圖列表,單個節點通過設定其Imagelndex 屬性指定這個列表中的單個影象。

# 12.1.8. Indent 屬性

property Indent: Integer;
1

  利用該屬性可以確定展開子節點相對於其展開的父節點的畫素縮排量。

# 12.1.9. Items 屬性*

property Items: TTreeNodes;
1

  該屬性用於列出顯示在樹狀檢視元件的單個節點,樹狀檢視中的單個節點是TTreeNode對 象。這些節點通過Items屬性和其在樹狀檢視中的索引號訪問。

  示例程式碼:

var
    i:integer; 
begin
    for i:=0 to FThis.TreeViewl.Items.Count - 1 do 
    begin
        FThis.TreeView1.Items[i].Text := FThis.TreeView1.Items[i].Text+'-'+
    IntToStr(FThis.TreeView1.Items[i].Index); 
    end;
end;
1
2
3
4
5
6
7
8
9

# 12.1.10. MultiSelect 屬性

type
    TMultiSelectStyles = (msControlSelect, msShiftSelect, msVisibleOnly, msSiblingOnly);
    TMultiSelectStyle = set of TMultiSelectStyles; 
property MultiSelectStyle: TMultiSelectStyle;
1
2
3
4

  當MultiSelect屬性為True時,該屬性用於確定多選擇節點如何工作,它必須包含下列值 之一:msControlSelect、msShiftSelect、msVisibleOnly 和 msSiblingOnly。

# 12.1.11. Readonly 屬性

property Readonly: Boolean;
1

  使用該屬性可指定使用者是否可編輯節點標籤,為True時,可展開或摺疊節點,但不能編輯其標籤;否則可編輯標籤。該屬性預設為False。

# 12.1.12. RightClickSelect 屬性

property RightClickSelect: Boolean;
1

  使用該屬性可允許Selected屬性指定右擊按鈕所選的節點。為True時,Selected的值即為右擊或最後單擊的節點值;否則為使用最後單擊的節點值。該屬性隻影響Selected屬性值。如果是右擊選擇的節點,則並不使樹狀檢視以高亮顯示該新節點。右擊樹狀檢視以影響Selected屬性的值前,必須將該屬性設為True。

# 12.1.13. RowSelect 屬性

property RowSelect: Boolean;
1

  設定該屬性為True,可使所選擇項的整個行以高亮顯示。當ShowLines為True時忽略該屬性。

# 12.1.14. Selected 屬性

property Selected: TTreeNode;
1

  讀取該屬性可訪問在樹狀檢視中選擇的節點。如果沒有所選節點,該屬性為NULL。

# 12.1.15. SelectionCount 屬性

property SelectionCount: Cardinal;
1

  該屬性用於返回,前所選擇的節點數。

# 12.1.16. Selections 屬性*

property Selections[Index: Integer]: TTreeNode;
1

  該屬性返回一個選擇的節點數。Index的最大值為SelectionCount-1。如果選擇了多個節點, 則Selections[0]為第一個選中節點。

# 12.1.17. ShowButtons 屬性

property ShowButtons: Boolean;
1

  如果該屬性為True,每個父項的左邊將顯示加號(+ )和減號(-)按鈕,使用者可單擊按鈕展開或摺疊子項,與雙擊父項的選擇相同。

# 12.1.18. ShowLines 屬性

property ShowLines: Boolean;
1

  如果該屬性為True,則顯示子節點與其對應的父節點之間的連線。根節點不自動連線,要連線根節點,必須將ShowRoot屬性也設為True。

# 12.1.19. ShowRoot 屬性

property ShowRoot: Boolean;
1

  要顯示連線最頂層節點的連線,可將樹狀檢視的該屬性和ShowLines屬性均設定為True。

# 12.1.20. SortType 屬性

property SortType: TSortType;
1

  該屬性用於確定樹狀檢視的節點是否動排序。一曰.樹狀檢視被排序,則丟失原層次。即使將該屬性設定回stNone,也不恢復原來專案的順序。該屬性的取值如下。

  • stNone:沒有排序。
  • stData:當Data對像或SortType改變時,該專案排序。
  • stBoth: 4 Data對像、Caption或SortType改變時,該專案排序。
  • stText:當Caption或SortType改變時,該專案排序。

# 12.1.21. StateImages 屬性

property StateImages: TCustomImageList;
1

  該屬性用於提供一組表示樹狀檢視節點狀態的點陣圖,狀態影象作為附加的影象顯示在專案圖示的左邊。

# 12.1.22. TopItem 屬性

property TopItem: TTreeNode;
1

  該屬性用於指定樹狀檢視的最頂層節點,當其改變時,樹狀檢視垂直滾動,以使指定的節點在樹狀檢視中處於頂層。

# 12.2. 事件

  • TTreeView元件主要事件列表
事件 何時觸發
OnAddition 當增加新結點時觸發該事件
OnAdvancedCustomDraw 當繪製元件檢視時觸發該事件
OnAdvancedCustomDrawItem 當繪製樹形結點時觸發該事件
OnChange 當結點選擇從一個轉移到另外一個后觸發該事件
OnChanging 當結點選擇正在從一個轉移到另外一個時觸發該事件
OnClick 當用于點選元件時觸發該事件
OnCollapsed 當一個結點收縮后觸發該事件
OnCollapsing 當一個結點正在收縮時觸發該事件
OnCompare 當兩個結點因為分類需要比較時觸發該事件
OnContextPopup 當時觸發該事件
OnCreateNodeClass 當樹形檢視中正在新增結點時觸發該事件
OnCustomDraw 當繪製樹形檢視前觸發該事件
OnCustomDrawItem 當繪製屬性檢視結點前觸發該事件
OnDblClick 當雙擊元件時觸發該事件
OnDeletion 當刪除樹形檢視時觸發該事件
OnEdited 當修改結點的文字屬性后觸發該事件
OnEditing 當開始修改結點的文字屬性時觸發該事件
OnEnter 當元件捕獲輸入焦點時觸發該事件
OnExit 當焦點轉移至其他元件時觸發該事件
OnExpanded 當結點展開后觸發該事件
OnExpanding 當結點展開時觸發該事件
OnKeyDown 當元件捕獲焦點時按下任意按鍵時觸發該事件
OnKeyPress 當某個按鍵按下時觸發該事件

# 12.3. 方法

方 法 描 述
AlphaSort 該方法以字母順序排列樹狀檢視的節點,如果成功,則返回True。若要樹狀檢視保持所有節點的排序,可使用SortType屬件
ClearSelection 取消所有的選擇節點
Deselect 取消選定節點
FindNextToSelect 返回下一個可選擇的節點
FullCollapse 摺疊樹狀檢視元件中的所有節點,呼叫這個方法可隱含樹狀檢視中的所有節點
FullExpand 擴嵌樹狀檢視元件中的所有節點,呼叫這個方法可顯示樹狀檢視中的所有節點
GetHitTestlnfoAt 呼叫該方法可確定參數X和Y指定的點位於樹狀檢視的哪一個部分
GetNodeAt 呼叫該方法可訪問X和Y參數指定的位置處的節點,X和Y指定 相對於樹狀檢視左上角的畫素位置。如果這個位置沒有節點,則該方法返回NULL
GetSelections 產生一個OnGetSelections事件並清空Alist,然後將所有選擇節點對像複製到其中
IsEditing 如果樹狀檢視的節點標籤正被編輯,則該方法返回True
LoadFromFile 使用該方法可從檔案中重新獲得樹狀檢視數據並把數據調入樹狀檢視
LoadFromStream 使用該方法可從指定的流中讀入樹狀檢視的節點
SaveToFile 利用該方法可將樹狀檢視的數據儲存在文字檔案中,使用LoadFromFile方法可將該檔案重新調入新的樹狀檢視對像中
SaveToStream 使用該方法可流出樹狀檢視的數據,使用LoadFromStream方法可使數據流入到另外的樹狀檢視對像中
Select 選擇一個或多個節點
SubSelect 鎖定節點的選擇狀態

# 12.3.1. AlphaSort 方法

function AlphaSort([ARecurse: Boolean]): Boolean;
1

  以字母順序排列樹狀檢視的節點,如果成功,則返回True。若要樹狀檢視保持所有節點的排序,可使用SortType屬性。

# 12.3.2. ClearSelection 方法

procedure ClearSelection(KeepPrimar>,: Boolean = False); virtual;
1

  取消所有的選擇節點。

  語法示例:

    FThis.TreeView1.ClearSelection(False);
1

# 12.3.3. FindNextToSelect方法

function FindNextToSelect: TTreeNode; virtual;
1

  該方法用於返回下一個可選擇的節點。

# 12.3.4. FullCollapse 方法

procedure FullCollapse;
1

  該方法用於摺疊樹狀檢視元件中的所有節點,呼叫這個方法可隱含樹狀檢視中的所有節點。如果ShowButtons為True,則所有按鈕將從「-」變為「 + 」。

# 12.3.5. FullExpand 方法

procedure FullExpand;
1

  該方法用於擴充套件樹狀檢視元件中的所有節點,呼叫這個方法可顯示樹檢視中的所有節點。如果ShowButtons為True,則所有按鈕將從「+」變為「-」。

# 12.3.6. GetNodeAt 方法

function GetNodeAt(X, Y: Integer): TTreeNode;
1

  呼叫該方法可訪問X和Y參數指定的位置處的節點,X和Y指定相對於樹狀檢視左上角 的畫素位置。如果這個位置沒有節點,則該方法返回NULL。

# 12.3.7. GetSelections 方法

function GetSelections(AList: TList): TTreeNode;
1

  該方法產生一個OnGetSelections事件並淸空Alist,然後將所有選擇節點對像複製到其中。 該方法返回的是Selected屬性的值。

# 12.3.8. IsEditing 方法

function IsEditing: Boolean;
1

  如果樹狀檢視的節點標籤正被編輯,該方法返回True。

# 12.3.9. LoadFromFile 方法

procedure LoadFromFile(const FileName: string);
1

  使用該方法可從檔案中重新獲得樹狀檢視數據並把數據調入樹狀檢視。

# 12.3.10. LoadFromStream 方法

procedure LoadFromStream(Stream: TStream);
1

  使用該方法可從指定的流中讀入樹狀檢視的節點,例如應用程式可將樹狀檢視顯示的資訊作為一個Binary Large Object (BLOB)欄位中的數據儲存。該方法使用TBlobStream對象可重新獲得數據。

# 12.3.11. SaveToFile 方法

procedure SaveToFile(const FileName: string);
1

  利用該方法可將樹狀檢視的數據儲存到文字檔案中,使用LoadFromFile方法可將該檔案重新調入新的樹狀檢視對像中。

# 12.3.12. SaveToStream 方法

procedure SaveToStream(Stream: TStream);
1

  使用該方法可流出樹狀檢視的數據,使用LoadFromStream方法可將數據流入到另外的樹 狀檢視對像中。

# 12.3.13. Select 方法

procedure Select(const Nodes: array of TTreeNode); overload; virtual; 
procedure Select(Nodes: TList); overload; virtual;
procedure Select(Node: TTreeNode; ShiftState: TShiftState = []); overload; virtual;
1
2
3

  利用該方法可選擇一個或多個節點。在前而兩個過程中,選中Nodes參數中的所有節點, 取消其他節點的選定。在第3個過程中,選擇的節點如同單擊選中一樣。

# 12.3.14. Subselect 方法

procedure Subselect(Node: TTreeNode; Validate: Boolean = False); virtual;
1

  該方法用於鎖定節點的選擇狀態。當MultiSelect為False時呼叫該方法將出現ETreeViewError 異常。


# 13. TListView元件

  TListView元件可以用來顯示各項帶圖示的列表,包括大圖示和小圖示的;也可以用來顯示帶有子項的列表,Windows操作系統的資源管理器中資料夾視窗就是最好的應用例子,就是我們打開"我的電腦"后能夠看到各個碟符的界面。TListView元件基本能實現和DBGrid元件一樣的功能,很多時候根據程式需要可以完全用TListView來替換DBGrid;只要將TListView的ViewStyle屬性設為vsReport,然後再配合其他幾個屬性,就可以實現DBGrid中的繫結資料庫、數據新增、修改、刪除、不同列的不同顏色顯示及單擊標題排序等等一系列常用的功能。

# 13.1. 屬性

  • TListView元件主要屬性
屬性 功能說明
Action 設定元件與動作的關聯
Align 決定容器(父元件)對該元件的歸屬方式
AllocBy 規定列表檢視在記憶體中可儲存的專案數
Anchors 該屬性指定元件如何停放在其父窗體中
BevelEdges 使用該屬性可獲得或設定元件成斜角的邊緣
BevelInner 使用該屬性可指定內斜角是否具有凸、凹或平坦的外觀
BevelKind 使用該屬性可修改斜角的風格、即斜角的傾斜程度
BevelOuter 使用該屬性可指定外斜角是否具有凸、凹或平坦的外觀,外斜角直接顯示在邊框內或內斜角的外面
BevelWidth 使用該屬性可指定內外斜角的畫素寬度
BiDiMode 使用該屬性可為元件指定雙向模式,控制文字的順序、垂直滾動條的位置以及是否改變對齊方式
BorderStyle 確定列表檢視元件是否有邊框
BorderWidth 使用該屬性可獲得或設定元件邊框的寬度
BoundingRect 讀取該屬性可獲得封裝列表檢視中所有專案的矩形螢幕座標,這個屬性允許應用程式調整元件的大小,以適合專案或確定滑鼠是否在列表上
CheckBoxes 列表專案旁邊是否顯示選擇框
ChangeDelay 改變結點被選擇直至OnChage事件發生時的時間延遲
Checkboxes 當ViewStyle屬性為vsList或vsReport時,設定該屬性為True可在列表項的旁邊顯示檢查框
Color 規定元件的背景顏色
Columns 使用該屬性可在列表檢視中新增或刪除列,或編輯其顯示屬性
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 規定元件的視覺外觀是3D還是2D
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
DragCursor 當拖動元件時顯示的滑鼠指針影象型別
DragKind 使用該屬性可獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 使用該屬性可控制使用者何時可拖動元件
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
Font 規定元件中的文字字型屬性
FullDrag 當標題欄被拖動時是否重繪
GridLines 是否繪製表格線
GroupHeaderImages 影象列表
Groups TListGroup列表用於分組列表專案
GroupView 開啟或關閉組檢視
HideSelection 當焦點移至其他元件時原結點是否仍繼續保持選擇狀態
HotTrack 當滑鼠移動至列表專案上時列表專案是否高亮顯示
HotTrackStyles 高亮顯示的風格選擇
HoverTime 當選擇列表專案時需在其上停留的時間,單位為ms
IconOptions 確定在列表檢視排列中如何顯示點陣圖。將ViewStyle屬性設定為vsIcon或vsSmallIcon時該屬性有效
Images 規定與樹形列表關聯的圖片列表
LargeImages 當ViewStyle屬性為vsIcon時的圖示列表
Items 列出顯示在檢視元件中的專案
MultiSelect 元件是否可以選擇多個結點
OwnerData 列表檢視元件是否虛擬化
OwnerDraw 列表檢視是否響應OnDrawItem事件
ParentBiDiMode 使用該屬性可獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 規定元件是否繼承父元件的Color屬性
ParentCtl3D 規定元件是否繼承父元件的Ctl3D屬性
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentFont 規定元件是否繼承父元件的字型屬性資訊
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
PopupMenu 將元件與功能表欄中的位置繫結
ReadOnly 使用該屬性可確定列表檢視能否用於輸入數據
RowSelect 當結點整行被選中時是否高亮顯示
SelCount 讀取該屬性可確定目前選擇的專案數量,為1時,使用Selected屬性可訪問所選專案;大於1時,則檢查列表項的Selected屬性
ShowColumnHeaders 是否顯示標題頭
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
ShowWorkAreas 工作區的視覺屬性是否顯示
SmallImages 當ViewStyle屬性不為vsIcon時的圖示列表
SortType 決定樹形檢視自動分類的形式
StateImages 選擇用於顯示狀態的影象列表
TabOrder 規定元件在父元件中的換欄位置序號
TabStop 使用該屬性可允許或不允許用Tab鍵訪問元件
ViewStyle 列表專案的展示形式
Visible 規定該元件在窗體上是否可見

# 13.1.1. BoundingRect 屬性

property BoundingRect: TRect;
1

  讀取該屬性可獲得封裝列表檢視中所有專案的矩形螢幕座標,這個屬性允許應用程式調整元件的大小,以適合專案或確定滑鼠是否在列表專案上。使用該屬性時,列表檢視的ViewStyle屬性必須設定為vslcon或vsSmallIcon。   程式碼示例:

var
    Rect:TRect:
begin
    Rect := FThis.ListView1.BoundingRect;
    FThis.Listview1.Height := Rect.Bottom; 
end;
1
2
3
4
5
6

# 13.1.2. CheckBoxes 屬性

property CheckBoxes: Boolean;
1

  當ViewStyle屬性設為vsList或vsReport時,如果把CheckBoxes屬性設為True,列表檢視中項的旁邊將顯示覆選框,如同TCheckListBox元件一樣。

# 13.1.3. Column 屬性

property Column[Index: Integer]: TListColumn;
1

  讀取該屬性可訪問TListColumn對象,該對像描述報告風格列表檢視中的列屬性。Index 參數是Columns屬性陣列中的列索引。只有當ViewStyle屬性為vsReport時Column有效。

# 13.1.4. ColumnClick 屬性

property ColumnClick: Boolean;
1

  使用該屬性可指定,使用者單擊列標題時是否發生OnColumnClick事件。該屬性為True時發生OnColumnClick事件;否則不發生該事件。

# 13.1.5. Columns屬性

property Columns: TListColumns;
1

  如果ViewStyle屬性設為vsReport,列表檢視的每一項將分成多欄,每一欄都是一個TListColumn對象,所有的欄構成TListColumn對象。在設計期,可以單擊Columns屬性旁的省略號"…"按鈕打開"EditingColumns"視窗,然後建立和編輯欄的屬性。 程式碼示例:

  FThis.ListView1.Columns.Add;
1

# 13.1.6. GridLines 屬性

property GridLines: Boolean;
1

  設定該屬性為True,可在列表檢視中新增專案分隔行。只有ViewStyle屬性為vsReport時 該屬性才有效。

# 13.1.7. HideSelection 屬性

property HideSelection: Boolean;
1

  如果此屬性設為True,當輸入焦點從列表檢視移到其他元件上時,原先選擇的節點將不再處於被選擇狀態。如果此屬性設為False,當輸入焦點移走時仍然保持選擇狀態。

# 13.1.8. HotTrack 屬性

property HotTrack: Boolean;
1

  該屬性為True時,滑鼠經過列表項上時以高亮顯示;否則不以高亮顯示。

# 13.1.9. HotTrackStyles 屬性

property HotTrackStyles: TListHotTrackStyles;
1

  使用該屬性可指定熱點跟蹤的風格,該風格指定了滑鼠通過列表項時列表檢視提供的反饋型別。

  • HtHandPoint:滑鼠指示器為手形。
  • HtUnderlineCold:在滑鼠指定專案后不跟蹤時,在專案下劃線。
  • HtUnderlineHot:在滑鼠指定的專案下劃線。

# 13.1.10. ItemFocused屬性

property ItemFocused: TListltem;
1

  此屬性指定或返回列表檢視中具有輸入焦點的項。一個列表檢視中可以同時有多個項被選擇,但只能有一個項具有輸入焦點。

# 13.1.11. Itemlndex 屬性

property ItemIndex: Integer;
1

  讀取該屬性可確定所選的專案。列表中第1項的索引為0,列表中第2項的索引為1,依次類推。該屬性為-1表示無選擇項。如果列表元件支援多選擇項,則該屬性為有焦點的所選項的索引。

# 13.1.12. Items 屬性

property Items: TListltems;
1

  使用該屬性可直接訪問表示列表中專案的TListltem對象。在設計程式時,在對像觀察器中設定該屬性顯示ListView Items Editor對訊框,利用此對話方塊可新增、刪除專案或子專案,並編輯其顯示屬性。在程式運行時,可使用每個專案的Caption、Imagelndex和Statelndex屬性改變列表項的外觀。

# 13.1.13. Largelmages 屬性

property Largelmages: TCustomlmageList;
1

  當ViewStyle屬性為vslcon時,設定該屬性可指定列表中專案旁邊將顯示的點陣圖。Items列表中的每一項與設定Imagelndex屬性的點陣圖相關聯。

# 13.1.14. MultiSelect 屬性

property MultiSelect: Boolean;
1

  使用該屬性可指定使用者能否在列表中選擇多個專案,為True時,可以多選;否則只能選擇一個專案。

# 13.1.15. ReadOnly 屬性

property Readonly: Boolean;
1

  使用該屬性可確定列表檢視能否用於輸入數據,為True時,列表檢視只能顯示而不能編輯內容;否則使用者可以修改內容。

# 13.1.16. RowSelect屬性

property RowSelect: Boolean;
1

  在ViewStyle屬性設為vsReport的前提下,如果把此屬性設為True,使用者可以一次選擇一整行。

# 13.1.17. SelCount 屬性

property SelCount: Integer;
1

  讀取該屬性可確定,前選擇專案的數量,為1時,使用Selected屬性可訪問所選專案;大於1時,要查詢所選專案,則檢查列表項的Selected屬性。該屬性只能在MultiSelect屬性為True時大於1。

# 13.1.18. Selected 屬性

property Selected: TListltem;
1

  使用該屬性可訪問列表中第1個所選項的屬性。當SelCount屬性為0時,該屬性為空。

# 13.1.19. ShowColumnHeaders 屬性

property ShowColumnHeaders: Boolean;
1

  設定該屬性可指定列表檢視中的列是否顯示列標題。使用列表檢視中的列時,ViewStyle屬性必須設定為vsReport。

# 13.1.20. ShowWorkAreas屬性

property ShowWorkAreas: Boolean;
1

  在ViewStyle屬性設為vsIcon或vsSmallIcon的情況下,通過定義工作區,可以把圖示分組,如果ShowWorkAreas屬性設為True,列表檢視將把客戶區分成幾個工作區,每個工作區的顏色由TWorkArea的Color屬性指定,標籤由TWorkArea的DisplayName屬性指定。

# 13.1.21. SmallImages 屬性

property SmallImages: TCustomImageList;
1

  設定該屬性可指定當ViewStyle屬性為vsSmallIcon、vsList或vsReport時,在列表項旁將顯示的點陣圖。每個列表項與Imagelndex屬性指定的影象列表中的點陣圖相關聯。

# 13.1.22. SortType 屬性

property SortType: TSortType;
1

  設定該屬性可指定列表中的專案順序。

  • stNone:不重新排序。
  • stData:項的Data屬性發生變化時重新排序。
  • stText:項的Caption屬性發生變化時重新排序。
  • stBoth:項的Data屬性或Caption屬性發生變化時重新排序。

# 13.1.23. ViewStyle屬性

  ListView元件作為一個可以顯示圖示或者子項的列表元件,它最重要的屬性就是ViewStyle屬性,該屬性決定了以哪種檢視模式顯示元件的項,這四種檢視模式分別如下:

  • vsIcon:大圖示檢視模式,在項的文字旁顯示大的圖示,在元件寬度足夠的情況下,項是優先以平行排列的,排列不完的則自動換行顯示在新行中。這個屬性要和TListView的LargeImages屬性一起使用;
  • vsSmallIcon:小圖示檢視模式,與大圖示模式一樣,但是顯示的是小的圖示;要和TListView的SmallImages屬性一起使用;
  • vsList:列表檢視模式,可以顯示小圖示,但是項是垂直排列的,只顯示單列,不能進行拖放操作;
  • vsReport:詳細資料檢視模式,是最豐富的選項,可以基本實現DBGrid的所有功能;它不但允許您檢視項,還允許您檢視為各項指定的任何子項。各項在網格中顯示,它們垂直排列且其子項會顯示在列中(帶有列標頭)。對應地,只有在Details檢視模式中起作用的元件屬性為:GridLines和FullRowSelect,GridLines屬性指示在包含元件中項及其子項的行和列之間是否顯示網格線。FullRowSelect屬性指示單擊某項是否選擇其所有子項(即整行選中),Columns屬性是用來設定有哪些列,這個可以在設計時事先設定,也可以在程式中設定:
ListView1.Columns.Items[0].Caption:='列1';
ListView1.Columns.Items[1].Caption:='列2';//新增列
ListView1.Columns.Items[2].Caption:='列3';
ListView1.Columns.Items[2].Width:=300;//這裡設定列的寬度
1
2
3
4

  TListView的Items屬性也是很重要的,用來向ListView中新增數據,Items屬性是一個TListItem類,在進行數據新增時一般先定義個TListItem類。

# 13.2. 事件

  • TListView元件主要事件列表
事件 何時觸發
OnColumnClick 當用戶單擊欄的表頭時,將觸發該事件
OnColumnDragged 當用戶用滑鼠左鍵拖動某一欄到一個新的位置時,將觸發該事件
OnEdited 當用戶直接編輯修改了項的標籤后,將觸發該事件
OnInfoTip 通過這個事件可以為列表檢視中的每一項加上提示
OnSelectItem 當列表檢視中一個項被選擇時,將觸發這個事件

# 13.2.1. OnChange 事件

type TLVChangeEvent = procedure(Sender: TObject; Item: TListltem; Change: TItemChange) of object; 
property OnChange: TLVChangeEvent;
1
2

  該事件在列表中的專案改變發生,編寫其事件處理程式可響應這種改變。

# 13.2.2. OnChanging 事件

type TLVChangingEvent = procedure(Sender: TObject; Item: TListltem; Change: TItemChange; var AllowChange: Boolean) of object;
property OnChanging: TLVChangingEvent;
1
2

  該事件在列表中的專案將要改變時發生,編寫其事件處理程式可有條件地阻止列表中的專案發生改變。

# 13.2.3. OnColumnClick事件

type TLVColumnClickEvent = procedure(Sender: TObject; Column: TListColumn) of object; 
property OnColumnClick: TLVColumnClickEvent;
1
2

  當用戶單擊欄的表頭時,將觸發該事件。這樣就可以對項進行排序。在OnColumnClick事件中有一個TListColumn型別的參數Column,此參數返回使用者單擊的欄,利用Column參數可以對使用者選中的欄進行訪問及設定。

# 13.2.4. OnColumnDragged事件

property OnColumnDragged: TNotifyEvent;
1

  當用戶用滑鼠左鍵拖動某一欄到一個新的位置時,將觸發該事件。在使用此事件之前必須將TListView元件的FullTrag屬性設定為True,表示可以拖動欄的位置,否則不能拖動,也就不能觸發此事件。

# 13.2.5. OnColumnRightClick 事件

type 
    TLVColumnRClickEvent = procedure(Sender: TObject; Column: TListColumn;
Point: TPoint) of object;
property OnColumnRightClick: TLVColumnRClickEvent;
1
2
3
4

  當用戶右擊列表檢視中的列標題時發生該事件。

# 13.2.6. OnCompare 事件

type 
    TLVCompareEvent = procedure(Sender: TObject; Item1, Item2: TListItem; Data:
Integer; var Compare: Integer) of object; 
property OnCompare: TLVCompareEvent;
1
2
3
4

  在列表排序期間需要比較兩個專案時發生該事件。當SortTypc屬性為stData或stBoth並在呼叫AlphaSort方法或不用SortProc參數呼叫CustomSort方法時呼叫該事件處理程式。

# 13.2.7. OnEdited事件

property OnEdited: TLVEditedEvent;
1

  當用戶直接編輯修改了項的標籤后,將觸發該事件。OnEdited事件中有一個TListItem型別的參數Item,利用此參數可以對使用者編輯的項進行訪問;OnEdited事件中還有一個String型別的參數S,它是使用者更改項的標籤后,顯示標籤的內容。

# 13.2.8. OnEditing 事件

type 
    TLVEditingEvent = procedure(Sender: TObject; Item: TListItem; var
AllowEdit: Boolean) of object; 
property OnEditing: TLVEditingEvent;
1
2
3
4

  當用戶開始編輯列表項的Caption屬性時發生該事件,編寫其事件處理程式可在使用者編輯列表項的Caption屬性前執行特定的操作。設罝AllowEdit參數為False,可防止使用者編輯ListItem 參數指定的專案。該事件只在Readonly屬性為False時發生。

# 13.2.9. OnGetlmagelndex 事件

property OnGetlmagelndex: TLVNotifyEvent;
1

  當一個專案將要在列表檢視元件中顯示時發生該事件。使用該事件可在列表檢視元件中顯示專案前為專案動態地分配一個Imagelndex。

# 13.2.10. OnGetSubItemImage 事件

type 
    TLVSubItemImageEvent = procedure(Sender: TObject; Item: TListItem; Subitem: Integer;
var ImageIndex: Integer) of object; 
property OnGetSubItemImage: TLVSubItemImageEvent;
1
2
3
4

  當一個子專案將要在列表檢視元件的列中顯示時發生該事件。使用該事件可在列中顯示子專案,為子專案動態地分配一個影象。該事件將過載由列表項的Subltemlmages屬性指定的值。

# 13.2.11. OnInsert 事件

type TLV Deleted Event = procedure(Sender: TObject; Item: TListltem) of object; 
property Onlnsert: TLVDeleted Event;
1
2

  在選中列表檢視中插入一新專案時發生該事件,Item參數為已插入到Items屬性的Tlistltem 對象。

# 13.2.12. OnSelectltem 事件

properly OnSelectItem: TLVSelectItemEvent;
1

  當選中列表檢視元件中的專案時發生該事件。OnSelectItem事件中有一個TListItem型別的參數Item,利用此參數可以對使用者編輯的項進行訪問;OnSelectItem事件中還有一個Boolean型別的參數Selected。每次選擇一個新項時將兩次觸發此事件,一次是釋放以前被選擇的項,Selected參數取值為False,代表釋放Item參數指定的項;另外一次是選擇新的項,Selected參數取值為True,代表選擇Item參數指定的項。

# 13.3. 方法

  • TListView元件主要方法列表
方法 功能描述
AlphaSort 將列表檢視中的項按標籤的字母順序排序
Arrange 重排圖示
FindCaption 此方法的呼叫可以搜索並返回一個TListItem型別的項
Scroll 此方法可以使列表檢視滾動
StringWidth 此方法用於返回字串的寬度
UpdateItems 此方法可以重畫指定範圍內的項

# 13.3.1. AlphaSort方法

function AlphaSort: Boolean;
1

  此方法可以將列表檢視中的項按標籤的字母順序排序。例如使用下面的程式碼就能夠將ListView1元件的項按標籤的字母順序排序:

FThis.ListView1.AlphaSort;
1

# 13.3.2. Arrange方法

type 
    TListArrangement = (arAlignBottom, arAlignLeft, arAlignRight, arAlignTop,
arDefault, arSnapToGrid);
procedure Arrange(Code: TList Arrangement);
1
2
3
4

  此方法用於重排圖示。Arrange方法只有在ViewStyle屬性為vsIcon或vsSmallIcon時才起作用。Arrange方法中有一個TListArrangement型別的參數Code,此參數用於指定圖示的排列方式,其取值及功能如下。

  • arAlignBottom:圖示底部對齊排列。
  • arAlignLeft:圖示左側對齊排列。
  • arAlignRight:圖示右側對齊排列。
  • arAlignTop:圖示頂部對齊排列。
  • arDefault:按照視窗剛建立時的風格將圖示從頂部排列。
  • arSnapToGrid:將圖示對齊到最近的網格,此值不支援虛擬模式。

# 13.3.3. Clear 方法

procedure Clear; override;
1

  該方法用於刪除列表元件中的所有專案。

  程式碼示例:

FThis.ListViewl.Clear;
1

# 13.3.4. ClearSelection 方法

procedure ClearSelection; override;
1

  呼叫該方法可取消列表元件中的選擇項。

# 13.3.5. CopySelection 方法

procedure CopySelection(Destination: TCustomListControl); override;
1

  該方法用於把選擇項複製到另一個TCustomListControl子類中,Destination參數為接收專案的列表。

# 13.3.6. CustomSort 方法

type TLVCompare = function(IParam 1, IParam2, IParamSort: Integer): Integer stdcall; 
function CustomSort(SortProc: TLVCompare; IParam: Longint): Boolean;
1
2

  呼叫該方法可利用SortProc參數定義排序函式排序列表中的專案。SortProc參數指定比較 通過IParam1和IParam2傳遞的列表項的排序函式。排序函式返回一個整數,為0,表示IParaml 和IParam2相同;大於0,表示IParam1大於lParam2;小於0,表示IParam1小於IParam2。 CustomSort函式的IParam參數可選值作為第3個參數傳遞到排序函式中。如果排序成功,那麼 該方法返回True。

# 13.3.7. DleteSelected 方法

procedure DeleteSelected; override;
1

  該方法用於刪除列表元件中的所有已選專案。

# 13.3.8. FindCaption方法

function FindCaption(StartIndex: Integer; Value: string; Partial, Inclusive, Wrap: Boolean): TListItem;
1

  此方法的呼叫可以搜索並返回一個TListItem型別的項。FindCaption方法中有5個參數,功能如下。

  • StartIndex:Integer型別,用於指定開始搜索的起始位置。
  • Value:String型別,指定要搜索的項的標題符合的內容。
  • Partial:Boolean型別,取True值,查詢標題開頭為Value參數指定的項;取False值,查詢標題與Value參數指定的內容相同的項。
  • Inclusive:Boolean型別,取True值,被StartIndex指定的項是第1個被選中的;取False值,開始查詢的位置從StartIndex擬定的下一個位置開始。
  • Warp:Boolean型別,取True值,搜索將從開始找到最後;取False值,搜索從StartIndex位開始查詢,找到最後。

  FindCaption方法返回的是第1個被找到的符合條件的項,如果沒找到符合條件的,則返回列表中的第1項。

# 13.3.9. GetItemAt 方法

function GetItemAt(X, Y: Integer): TListItem;
1

  呼叫該方法可獲得在X和Y參數指定位置查詢列表項的TListItem對象,X和Y為指定位置的畫素座標。如果沒有查詢到列表項,則返回空。

# 13.3.10. GetNearestltem 方法

function GetNearestItem(Point: TPoint; Direction: TSearchDirection): TListItem;
1

  呼叫該方法從Point參數指定的位置開始查詢,向Direction參數指定的方向移動,直到找到一個列表項。如果沒有查詢到列表項,則返回空。

# 13.3.11. GetNextltem 方法

function GetNextItem(StartItem: TListltem; Direction: TSearchDirection; States: TItemStates): TListItem;
1

  呼叫該方法可從StartItem參數以Direction參數指定的方向查詢下一個列表項。

# 13.3.12. GetSearchString 方法

function GetSearchString: string;
1

  呼叫該方法可在列表檢視有焦點時獲得使用者輸入的字元序列。每,使用者輸入一個字元時, 列表檢視就新增字元到查詢字串,並查詢匹配的項。

# 13.3.13. IsEditing 方法

function IsEditing: Boolean;
1

  呼叫該方法可確定使用者足否正在編輯列表中的專案標題。如果使用者正在編輯一個專案,則返回True;否則返回False。

# 13.3.14. SelectAll 方法

procedure SelectAll; override;
1

  該方法用於選中檢視中的所有專案。


# 14. THeaderControl元件

  表頭元件(THeaderControl)THeaderControl元件提供了一系列可改變尺寸的列,一般與列表框配合使用,用於把列表框中的資訊歸類。該元件可以分成幾節,使用者可以使用游標調整節的寬度或者把節拖到另一個位置,拖動時將觸發節拖動事件(OnSectionTrack)。THeaderControl元件提供了標準的頭元素,程式運行時操作表頭並不會影響它下面的元件。比如,當表頭改變尺寸時,它下面元件的列也應該隨之改變,此時,開發者必須響應THeaderControl元件的尺寸改變事件(OnSetionResize),通過編寫程式碼才能達到這一目的。

# 14.1. 屬性

  • THeaderControl元件主要屬性
屬性 功能說明
Align 決定容器(父元件)對該元件的歸屬方式
Anchors 該屬性指定元件如何停放在其父窗體中
BiDiMode 使用該屬性可為元件指定雙向模式,控制文字的順序、垂直滾動條的位置以及是否改變對齊方式
BorderWidth 使用該屬性可獲得或設定元件邊框的寬度
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
DragCursor 當拖動元件時顯示的滑鼠指針影象型別
DragKind 使用該屬性可獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 使用該屬性可控制使用者何時可拖動元件
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
Font 規定元件中的文字字型屬性
FullDrag 當標題欄被拖動時是否重繪
HotTrack 當滑鼠移動至列表專案上時列表專案是否高亮顯示
Images 規定關聯的圖片列表
ParentBiDiMode 使用該屬性可獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentFont 規定元件是否繼承父元件的字型屬性資訊
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
PopupMenu 將元件與功能表欄中的位置繫結
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
Section 訪問表頭元件中所有節
Visible 規定該元件在窗體上是否可見

# 14.1.1. Images屬性

  用於指定一個影象列表,其中的影象將顯示在節的標籤旁邊。每個節(THeadSection對像)通過它的ImageIndex屬性指定一個影象。

# 14.1.2. Sections屬性

  此屬性可以訪問表頭元件中所有的節。例如要在運行期動態地增加一節,程式示例程式碼如下:

var
    MyHeadSection:TheadSection
begin
    HeaderControl1.Section1.Items.Clear;
    MyHeadSection:=HeaderControl1.Sections.Items.Add;
    HeaderControl1.Sections.Items[0].Text:=MySection;
    HeaderControl1.Sections.Items[0].Width:=100
end;
1
2
3
4
5
6
7
8

# 14.1.3. Style屬性

  此屬性用於設定表頭元件風格,預設值是hsButtons。若設為hsFlat,表頭的節(按鈕)是平坦的。它有如下兩個使用者可選值。

  • hsFlat:表頭的節是平坦風格的
  • hsButton:表頭的節是按鈕風格的

# 14.2. 事件

  • THeaderControl元件主要事件列表
事件 何時觸發
OnDrawSection 當用戶選擇這個節或節的寬度發生了變化需要重畫時,將觸發該事件
OnSectionClick 當用戶單擊這個節時就相當於單擊一個按鈕,將觸發該事件
OnSectionDrag 當用戶試圖拖動某一節來改變它的順序時,將觸發該事件
OnSectionEndDrag 當用戶拖動某一節並且改變了它的順序后,將觸發該事件
OnSectionResize 當用戶用游標拖動節與節之間的分隔線導致節的寬度改變時,將觸發該事件
OnSectionTrack 當用戶正在用游標拖動節與節之間的分隔線試圖改變節的寬度時,將觸發該事件

# 14.2.1. OnDrawSection事件

  如果節(THeaderSection對像)的Style屬性設為hsOwnerDraw(手動重畫),當用戶選擇了這個節或節的寬度發生了變化需要重畫時,將觸發這個事件。

# 14.2.2. OnSectionResize事件

  當用戶用游標拖動節與節之間的分隔線導致節的寬度改變時,將觸發該事件。   OnSectionResize事件設定了如下兩個訊息參數。

  • HeaderControl:節所屬的表頭元件。
  • Section:寬度改變的節。

# 14.2.3. OnSectionTrack事件

  當用戶正在用游標拖動節與節之間的分隔線試圖改變節的寬度時,將觸發該事件。其中,State參數列示目前的操作狀態。   OnSectionTrack事件設定了如下幾個參數:

  • HeaderControl:節所屬的表頭元件
  • Section:寬度改變的節
  • State:表示目前的操作狀態,取值有3種,tsTrackBegin表示使用者已按下節與節之間的分隔線準備拖動;tsTrackMove表示分隔線正在被拖動;tsTrackEnd表示拖放已結束,使用者釋放了游標。
  • Width:開始拖動的節。

# 15. TstatusBar元件

  狀態列元件(TStatusBar)TStatusBar元件是用來顯示目前程式狀態的。狀態列可以分為多個面板,用來顯示不同狀態的內容。

# 15.1. 屬性

  • TStatusBar元件主要屬性
屬性 功能說明
Align 決定容器(父元件)對該元件的歸屬方式
Anchors 該屬性指定元件如何停放在其父窗體中
AutoHint 如果此屬性設定為True,每個元件Hint屬性上的文字自動提示在TStatusBar元件的第1個窗格上
BiDiMode 使用該屬性可為元件指定雙向模式,控制文字的順序、垂直滾動條的位置以及是否改變對齊方式
BorderWidth 使用該屬性可獲得或設定元件邊框的寬度
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
Canvas 此屬性返回狀態列的畫布
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
DragCursor 當拖動元件時顯示的滑鼠指針影象型別
DragKind 使用該屬性可獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 使用該屬性可控制使用者何時可拖動元件
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
Font 規定元件中的文字字型屬性
FullDrag 當標題欄被拖動時是否重繪
Panels 明確是否選中該覈取方塊
ParentBiDiMode 使用該屬性可獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentFont 規定元件是否繼承父元件的字型屬性資訊
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
PopupMenu 將元件與功能表欄中的位置繫結
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
SimplePanel 如果此屬性設定為True,狀態列只有一個窗格,窗格上顯示的資訊由SimpleText屬性指定
SimpleText 狀態列上的顯示的資訊由此屬性決定
SizeGrip 如果此屬性設定為True,允許游標拖動狀態列改變其尺寸
Section 訪問表頭元件中所有節
Visible 規定該元件在窗體上是否可見

# 15.1.1. AutoHint屬性

  如果此屬性設為True,每個元件Hint屬性上的文字自動提示在TStatusBar元件的第1個窗格上。

# 15.1.2. SimplePanel屬性

  如果此屬性設為True,狀態列將只有一個窗格,窗格上顯示的資訊由SimpleText屬性指定。程式示例程式碼如下:

# 15.1.3. SimpleText屬性

  此屬性決定狀態列上顯示的資訊。此屬性在編輯時設定不起作用,程式運行後進行設定,發現狀態列上的欄目都消失,只顯示SimpleText屬性設定的內容,但是如果被其他視窗覆蓋后狀態列將返回原狀態。

# 15.1.4. SizeGrip屬性

  如果此屬性設為True,狀態列的右下角會顯示一個三角形,用滑鼠游標單擊這個三角形並拖動可以改變狀態列的尺寸。注意,此時不能將Align屬性設定為alBottom、alRight或alClient。

# 15.2. 事件

  • THeaderControl元件主要事件列表
事件 何時觸發
OnCreatePanelClass 當狀態列將要被建立時,將觸發該事件
OnDrawPanel 當重繪狀態列檢視時,將觸發該事件
OnHint 當狀態列的資訊提示出現前,將觸發該事件

# 16. TToolBar元件

  工具欄元件(TToolBar)為使用者提供了快捷功能表的訪問方式。

# 16.1. 屬性

  • TToolBar元件主要屬性
屬性 功能說明
ButtonCount 工具欄中的按鈕數量
Buttons 工具欄中的按鈕(TToolButton)列表
Canvas 工具欄的畫布
CustomizeKeyName 工具欄按鈕自定義按鈕配置Key名稱
CustomizeValueName 工具欄按鈕自定義按鈕配置Value名稱
RowCount 工具欄中的列數
Align 決定容器(父元件)對該元件的歸屬方式
AllowTextButtons 是否允許僅包含文字內容的按鈕顯示在工具欄中
Anchors 該屬性指定元件如何停放在其父窗體中
BorderWidth 使用該屬性可獲得或設定元件邊框的寬度
ButtonHeight 規定工具欄中按鈕(TButton)的高度
Caption 定義元件的文字描述資訊
Color 規定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 規定元件的視覺外觀是3D還是2D
Customizeable 使用者是否在程式運行時可以自定義工具欄
DisableImages 規定顯示在不啟用按鈕中的圖片
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
DragCursor 當拖動元件時顯示的滑鼠指針影象型別
DragKind 使用該屬性可獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 使用該屬性可控制使用者何時可拖動元件
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
Flat 使工具欄適應工具按鈕的大小
Font 規定元件中的文字字型屬性
HideClippedButtons 隱藏被剪下的按鈕
HotImages 當指向按鈕時顯示的圖片的列表
Images 規定與工具欄關聯的圖片列表
Indent 工具欄左側的空白
Menu 與功能表欄專案同步
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentFont 規定元件是否繼承父元件的字型屬性資訊
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
PopupMenu 將元件與功能表欄中的位置繫結
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
TabOrder 規定元件在父元件中的換欄位置序號
TabStop 使用該屬性可允許或不允許用Tab鍵訪問元件
Transparent 工具欄是否可以變形
Visible 規定該元件在窗體上是否可見
Wrapable 使工具欄元件自動換行

# 16.2. 事件

  • TToolBar元件主要事件列表
事件 何時觸發
OnAdvancedCustomDraw 當狀工具欄背景繪製時的分離階段,將觸發該事件
OnAdvancedCustomDrawButton 當狀工具欄按鈕繪製時的分離階段,將觸發該事件
OnCustomDraw 當工具欄開始繪製時,將觸發該事件
OnCustomDrawButton 當工具欄按鈕開始繪製時,將觸發該事件
OnCustomizeAdded 當用戶向工具欄新增按鈕時觸發該事件
OnCustomizeCanDelete 當用戶嘗試刪除工具欄中的按鈕時,將觸發該事件
OnCustomizeCanInsert 當用戶嘗試向工具欄中新增按鈕時,將觸發該事件
OnCustomized 當用戶完成對工具欄的自定義更改時,將觸發該事件
OnCustomizeDelete 當用戶從工具欄中刪除按鈕時觸發該事件
OnCustomizeNewButton 當用戶向工具欄中新增按鈕時,觸發該事件
OnCustomizeReset 當用戶取消對工具欄的自定義修改時,觸發該事件
OnCustomizing 當用戶打開自定義對話方塊用於對工具欄進行自定義時,觸發該事件

# 16.3. 方法

  • TToolBar元件主要方法列表
方法 功能描述
GetChildren 讓流系統按照功能表顯示的順序載入並儲存子元件
TrackMenu 工具欄的快捷鍵按下時呼叫

# 17. TCoolBar元件

  TControlBar作一個工具欄風格的可以自動停靠的功能表。

# 17.1. 屬性

  • TCoolBar元件主要屬性
屬性 功能說明
Align 決定容器(父元件)對該元件的歸屬方式
Anchors 該屬性指定元件如何停放在其父窗體中
AutoSize 元件尺寸自適應于內容
BandBorderStyle 決定TCoolBand的band的邊緣尺寸
BandMaxSize 當TCoolBand最大化時的尺寸限制
Bands 列舉欄目中的TCoolBands
Bitmap 定義用於顯示在TCoolBar的band中的影象
BorderWidth 使用該屬性可獲得或設定元件邊框的寬度
Color 規定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 規定元件的視覺外觀是3D還是2D
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
DragCursor 當拖動元件時顯示的滑鼠指針影象型別
DragKind 使用該屬性可獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 使用該屬性可控制使用者何時可拖動元件
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
FixedOrder TCoolBar中是否可以重新對band進行排序
FixedSize Band是否維持統一的高度
Font 規定元件中的文字字型屬性
Images 規定與工具欄關聯的圖片列表
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentFont 規定元件是否繼承父元件的字型屬性資訊
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
PopupMenu 將元件與功能表欄中的位置繫結
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
Vertical Band是水平排列還是垂直排列
Visible 規定該元件在窗體上是否可見

# 18. TPageScroller元件

  TPageScroller元件建立了用於顯示一個小視窗,比如工具欄。

# 18.1. 屬性

  • TPageScroller元件主要屬性
屬性 功能說明
Align 決定容器(父元件)對該元件的歸屬方式
Anchors 該屬性指定元件如何停放在其父窗體中
AutoScroll 當滑鼠懸停在滾輪方向按鈕上時自動滾動
BorderWidth 使用該屬性可獲得或設定元件邊框的寬度
ButtonSize 規定滾動條方向按鈕的大小
Color 規定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大值或最小值時,重新調整元件的大小不能超出該限制
Control 包含在頁面元件中的元件
DoubleBuffered 確定元件影象是直接在視窗渲染或者是首先在內容中產生點陣圖
DragCursor 當拖動元件時顯示的滑鼠指針影象型別
DragKind 使用該屬性可獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 使用該屬性可控制使用者何時可拖動元件
Enabled 規定元件是否響應滑鼠、鍵盤和計時器事件
Font 規定元件中的文字字型屬性
Margin 定義視窗內容與元件
ParentDoubleBuffered 規定元件是否繼承父元件的DoubleBuffered屬性
ParentFont 規定元件是否繼承父元件的字型屬性資訊
ParentShowHint 使用該屬性可確保窗體中的所有元件以統一格式顯示或不顯示其幫助提示
PopupMenu 將元件與功能表欄中的位置繫結
Position 滾動條在元件中的位置
ShowHint 當滑鼠游標懸停在元件上時是否顯示提示內容
TabOrder 規定元件在父元件中的換欄位置序號
TabStop 使用該屬性可允許或不允許用Tab鍵訪問元件
Visible 規定該元件在窗體上是否可見

# 18.2. 事件

  • TPageScroller元件主要事件列表
事件 何時觸發
OnScroll 當滾動條開始滾動時,將觸發該事件

# 18.3. 方法

  • TToolBar元件主要方法列表
方法 功能描述
GetButtonState 返回頁面滾動按鈕的狀態
公共事件
系統控制元件

← 公共事件 系統控制元件→

Copyright © 2021-2025 愛招飛IsoFace | ALL Rights Reserved
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式