愛招飛幫助手冊 愛招飛幫助手冊
  • 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. TMainMenu元件
          • 1.1. 屬性
          • 1.2. 事件
          • 1.3. 方法
        • 2. TPopupMenu元件
          • 2.1. 屬性
          • 2.2. 事件
          • 2.3. 方法
        • 3. TLabel元件
          • 3.1. 屬性
          • 3.1.1. Alignment 屬性
          • 3.1.2. AutoSize 屬性
          • 3.1.3. FocusControl 屬性
          • 3.1.4. Layout 屬性
          • 3.1.5. ShowAccelChar 屬性
          • 3.1.6. Transparent 屬性
          • 3.1.7. Wordwrap 屬性
          • 3.1.8. Caption 屬性
          • 3.2. 事件
          • 3.2.1. OnMouseEnter 事件
          • 3.2.2. OnMouseLeave 事件
        • 4. TEdit元件
          • 4.1. 屬性
          • 4.1.1. AutoSelect 屬性
          • 4.1.2. BorderStyle 屬性
          • 4.1.3. CanUndo 屬性
          • 4.1.4. CharCase 屬性
          • 4.1.5. HideSelection 屬性
          • 4.1.6. MaxLength 屬性
          • 4.1.7. Modified 屬性
          • 4.1.8. OEMConvert 屬性
          • 4.1.9. PasswordChar 屬性
          • 4.1.10. Readonly 屬性
          • 4.1.11. SelLength 屬性
          • 4.1.12. SelStart 屬性
          • 4.1.13. SelText屬性
          • 4.1.14. Text 屬性
          • 4.2. 事件
          • 4.3. 方法
          • 4.3.1. Clear 方法*
          • 4.3.2. ClearSelcction 方法*
          • 4.3.3. ClearUndo 方法*
        • 5. TMemo元件
          • 5.1. 屬性
          • 5.1.1. Alignment 屬性
          • 5.1.2. CaretPos 屬性
          • 5.1.3. Lines 屬性
          • 5.1.4. ScrollBars 屬性
          • 5.1.5. WantReturns 屬性
          • 5.1.6. WantTabs 屬性
          • 5.1.7. Wordwrap 屬性
          • 5.1.8. CanUndo 屬性
          • 5.1.9. HideSelection 屬性
          • 5.1.10. MaxLength 屬性
          • 5.1.11. Modified 屬性
          • 5.2. 事件
          • 5.3. 方法
        • 6. TButton元件
          • 6.1. 屬性
          • 6.1.1. Cancel 屬性
          • 6.1.2. Default 屬性
          • 6.1.3. Caption 屬性
          • 6.1.4. Wordwrap 屬性
          • 6.2. 事件
          • 6.2.1. OnClick 事件
        • 7. TCheckBox元件
          • 7.1. 屬性
          • 7.1.1. Alignment 屬性
          • 7.1.2. AllowGrayed 屬性
          • 7.1.3. Checked 屬性
          • 7.1.4. State 屬性
        • 8. TRadioButton元件
          • 8.1. 屬性
          • 8.1.1. Alignment 屬性
          • 8.1.2. Checked 屬性
          • 8.2. 方法
        • 9. TListBox元件
          • 9.1. 屬性
          • 9.1.1. AutoComplete 屬性
          • 9.1.2. BorderStyle 屬性
          • 9.1.3. Columns 屬性
          • 9.1.4. Count 屬性
          • 9.1.5. ExtendedSelect 屬性
          • 9.1.6. IntegralHeight 屬性
          • 9.1.7. ItemHeight 屬性
          • 9.1.8. Itemlndex 屬性
          • 9.1.9. Items 屬性
          • 9.1.10. MultiSelect 屬性
          • 9.1.11. ScrollWidth 屬性
          • 9.1.12. SelCount 屬性
          • 9.1.13. Selected 屬性
          • 9.1.14. Sorted 屬性
          • 9.1.15. Style 屬性
          • 9.1.16. TabWidth 屬性
          • 9.1.17. Toplndex 屬性
          • 9.2. 事件
          • 9.2.1. OnData 事件
          • 9.3. 方法
          • 9.3.1. AddItem 方法
          • 9.3.2. Clear 方法
          • 9.3.3. ClearSelection 方法
          • 9.3.4. ItemAtPos 方法
          • 9.3.5. DeleteSelected 方法
          • 9.3.6. SelectAll 方法
          • 9.3.7. MoveSelection 方法
        • 10. TComboBox 元件
          • 10.1. 屬性
          • 10.1.1. AutoCloseUp 屬性
          • 10.1.2. AutoComplete 屬性
          • 10.1.3. AutoDropDown 屬性
          • 10.1.4. CharCase 屬性
          • 10.1.5. SelText 屬性
          • 10.1.6. Sorted 屬性
          • 10.1.7. Style 屬性
          • 10.1.8. DropDownCount 屬性
          • 10.1.9. DroppedDown 屬性
          • 10.1.10. Itemlndex 屬性
          • 10.1.11. Items 屬性
          • 10.1.12. MaxLength 屬性
          • 10.1.13. SelLength 屬性
          • 10.2. 事件
          • 10.3. 方法
          • 10.3.1. AddItem 方法
          • 10.3.2. Clear 方法
          • 10.3.3. ClearSelection 方法
          • 10.3.4. CopySelection 方法
          • 10.3.5. DcleteSelected 方法
          • 10.3.6. Focused 方法
          • 10.3.7. MoveSelection 方法
        • 11. TImageComboBox 元件
          • 11.1. 屬性
          • 11.2. 方法
          • 11.2.1. FillSQL
        • 12. TScrollBar元件
          • 12.1. 屬性
          • 12.2. 事件
          • 12.3. 方法
        • 13. TGroupBox 元件
          • 13.1. 屬性
        • 14. TRadioGroup 元件
          • 14.1. 屬性
        • 15. TPanel 元件
          • 15.1. 屬性
        • 16. TActionList 元件
          • 16.1. 屬性
          • 16.2. 事件
        • 17. TBarCode 元件
          • 17.1. 屬性
        • 18. TWebBrowser 元件
          • 18.1. 方法
          • 18.1.1. Navigate 方法
        • 19. TIdHTTPServer 元件
          • 19.1. 屬性
          • 19.2. 事件
        • 20. TIdTCPClient 元件
          • 20.1. 屬性
          • 20.2. 方法
        • 21. TIdTCPServer 元件
          • 21.1. 屬性
          • 21.1.1. 事件
        • 22. TFlying 元件
          • 22.1. 屬性
          • 22.1.1. HTTPOptions
          • 22.1.2. MailOptions
          • 22.1.3. MQTTOptions
          • 22.1.4. PrintOptions
          • 22.1.5. WebSocketOptions
          • 22.2. 事件
          • 22.2.1. OnReceivedError事件
          • 22.2.2. OnReceivedExport事件
          • 22.2.3. OnReceviedPrinter事件
          • 22.3. 方法
          • 22.3.1. GetPrinterList 方法
          • 22.3.2. ReportPrint方法
          • 22.3.3. ReportPreview方法
          • 22.3.4. PrintPdf方法
          • 22.3.5. PrintPic方法
        • 23. TPDFViewer 元件
          • 23.1. 方法
          • 23.1.1. LoadFromFile 方法
        • 24. TSwitchButton元件
          • 24.1. 屬性(Properties)
          • 24.1.1. IsChecked屬性
          • 24.1.2. Bitmap屬性
          • 24.1.3. SwitchOffBmp屬性
          • 24.1.4. SwitchOffBmp屬性
          • 24.2. 事件(Events)
          • 24.2.1. OnSwitch事件
          • 24.3. 示例(Code)
      • 對話方塊控制元件
      • 標準工控控制元件
      • 專業工控控制元件
      • 數據控制控制元件
      • 數據表格控制元件
      • 數據感知控制元件
      • 通訊控制控制元件
      • 儀表採集控制元件
      • 監控視訊控制元件
      • 數據圖表控制元件
      • 流程圖表控制元件
      • 數據分析控制元件
      • 複合數控控制元件
      • 模擬數控控制元件
      • 調節數控控制元件
      • 數位數控控制元件
      • 數據數控控制元件
      • 地圖控制元件
      • 其他控制元件
      • SVG控制元件
      • IsoBean控制元件
      • 樣式控制元件
      • 樣式外觀控制元件
      • 樣式高級控制元件
      • 樣式工具控制元件
      • 樣式數據控制元件
      • 樣式控制元件GP
      • 樣式數據控制元件GP
    • 功能用法

    • 專用模板

    • 開發流程

    • 函式程式

  • 開發手冊

目录

標準控制元件

# Smart 控制元件使用(標準)

  標準控制元件盤中包含經常會使用到的標準Windows控制元件。可配合顯示標準的Windows程式界面。

# 1. TMainMenu元件

  TMainMenu為窗體提供主功能表。要開始設計功能表,請在窗體中新增主功能表,然後雙擊該元件。   TMainMenu引入了用於將主功能表的下拉功能表與另一個窗體的主功能表合併的屬性和方法。   TMainMenu引入了用於輔助OLE容器的功能表協商過程的屬性和方法。   提示:要建立使用者可以在運行時配置的功能表,請將TActionMainMenuBar元件與操作管理器一起使用。

# 1.1. 屬性

  • TMainMenu元件主要屬性
屬性 功能說明
AutoHotkeys 確定是否可以自動重置功能表項的快捷鍵
AutoLineReduction 確定是否從功能表中自動刪除冗餘的分隔條
AutoMerge 確定輔助窗體的主功能表是否在運行時與非MDI應用程式中的主窗體的主功能表合併
BiDiMode 確定中東語言環境中功能表的佈局
Images 列出可以出現在各個功能表項旁邊的影象
OwnerDraw 指定應用程式是否繪製功能表項
ParentBiDiMode 指示BiDiMode屬性是否從使用該功能表的元件繼承

# 1.2. 事件

  • TMainMenu元件事件列表
事件 何時觸發
OnChange 在功能表更改時,觸發該事件

# 1.3. 方法

  • TMainMenu元件主要方法列表
方法 功能描述
GetOle2AcceleratorTable 返回主功能表的快捷鍵對應表
Merge 將一個窗體的主功能表與另一個窗體的主功能表組合在非MDI應用程式中
PopulateOle2Menu 使用主功能表中的專案填充OLE功能表
SetOle2MenuHandle 將OLE功能表的控制代碼與主功能表相關聯
Unmerge 反轉非MDI應用程式中兩個功能表的合併操作

# 2. TPopupMenu元件

  TPopupMenu使使用者使用滑鼠右鍵單擊元件時顯示的彈出功能表。要使彈出功能表可用,請將TPopupMenu對像分配給元件的PopupMenu屬性。   提示:要建立使用者可以在運行時配置的彈出功能表,請將TStandardMenuPopup元件與操作管理器一起使用。   注意:如果彈出功能表的ParentBiDiMode為true,則彈出功能表的BiDiMode設定為啟用它的元件的BiDiMode。如果找不到元件,BiDiMode將設定為Application對象的BiDiMode的值。彈出功能表的BiDiMode會影響其所有功能表項。

# 2.1. 屬性

  • TPopupMenu元件主要屬性
屬性 功能說明
PopupComponent 指示上次顯示彈出功能表以響應滑鼠右鍵單擊的元件
PopupPoint 指示彈出功能表顯示的位置
Alignment 確定使用者單擊滑鼠右鍵時彈出功能表的顯示位置
AutoHotkeys 確定是否可以自動重置功能表項的快捷鍵
AutoLineReduction 確定是否從功能表中自動刪除冗餘分隔條
AutoPopup 確定當用戶單擊滑鼠右鍵時是否自動顯示彈出功能表
BiDiMode 確定中東語言環境中功能表的佈局
HelpContext 指定整個彈出功能表的上下文ID
Images 列出可以出現在各個功能表項旁邊的影象
MenuAnimation 指定首次顯示功能表時的顯示方式
OwnerDraw 指定應用程式是否繪製功能表項
ParentBiDiMode 指示BiDiMode屬性是否從使用該功能表的元件繼承
TrackButton 指定當與工具欄按鈕關聯時,哪個滑鼠按鈕啟用彈出功能表

# 2.2. 事件

  • TPopupMenu元件事件列表
事件 何時觸發
OnChange 在功能表更改時,觸發該事件
OnPopup 在彈出功能表出現之前,觸發該事件

# 2.3. 方法

  • TPopupMenu元件主要方法列表
方法 功能描述
Popup 在螢幕上顯示彈出功能表
{此示例使用彈出功能表。當用戶按下滑鼠按鈕時,彈出功能表出現在使用者點選滑鼠所在的位置:}
procedure TForm1.FormCreate(Sender:TObject);
begin
    FThis.PopupMenu1.AutoPopup:=False;
end;

procedure TForm1.FormMouseDown(Sender:TObject;Button:TMouseButton;Shift:TShiftState;X,Y:Integer);
begin
    FThis.PopupMenu1.Popup(Left+X,Top+Y);
end;
1
2
3
4
5
6
7
8
9
10

# 3. TLabel元件

  使用TLabel可新增使用者無法編輯到窗體的文字。此文字可用於標記另一個元件,並可在使用者鍵入快捷鍵時將焦點設定為該元件。   因為TLabel不是TWinControl的子類,所以它沒有自己的視窗,也無法從鍵盤接收直接輸入。要將對像新增到可以響應鍵盤輸入的窗體(除了在鍵入快捷鍵時將焦點設定為另一個對像),還可以使用TStaticText。   要將對像新增到顯示使用者可以滾動或編輯的文字的窗體,請使用TEdit。

# 3.1. 屬性

  • TLabel元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Alignment 控制文字在標籤中的水平放置
Anchors 指定元件如何停放在父窗體中
AutoSize 確定標籤的大小是否自動調整大小以容納文字
BiDiMode 指定元件的方向模式
Caption 指定標識使用者元件的文字字串
Color 指定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 確定元件如何啟動拖放操作或拖掛操作
EllipsisPosition 指定如何在文字中放置省略號以使其適合分配的矩形
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
FocusControl 指定與標籤關聯的視窗元件
Font 確定元件內顯示的文字字型
GlowSize 指定標籤周圍發光的半徑
Layout 指定文字在標籤中的垂直位置
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ShowAccelChar 確定標籤文字中的&符號的顯示方式
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
Transparent 指定是否可以通過標籤檢視位於窗體上標籤下方的元件
Visible 確定元件是否可見
WordWrap 指定標籤文字在標籤寬度過長時是否換行

# 3.1.1. Alignment 屬性

property Alignment: TAlignment;
1

  設定該屬性可以指定標籤文字在ClientRect區域內如何排列。如果Wordwrap屬性為True, 而且標籤中包含多於一行的文字時,則這個屬性的效果將更加明顯。   Alignment屬性的可選值如下。

  • taLeftJustify:輸入的文字在元件的左邊對齊。
  • taCenter:輸入的文字在元件的中間對齊。
  • taRightJustify:輸入的文字在元件的石邊對齊。

# 3.1.2. AutoSize 屬性

property AutoSize: Boolean;
1

  使用該屬性可自動調整標籤的大小,使客戶區容納文字的高和寬。,設罝該屬性為False 時,標籤大小同定;否則標籤大小將隨文字內容和字型屬性的改變而改變。   當Wordwrap屬性為True時,標籤寬度固定,此時如果該屬性也為True,則改變文字僅使標籤的高度發生改變;如果該屬性為True, Wordwrap為False,則標籤高度由字型決定,文字變化將使標籤寬度變化。

# 3.1.3. FocusControl 屬性

property FocusControl: TWinControl;
1

  設罝該屬性可使元件為當用戶按下標籤中指定的快捷鍵時接收焦點的視窗類元件。指定一 個快捷鍵時,要在標籤文字前新增一個&符號,並將ShowAccelChar屬性設定為True。

  • 應用
      FocusControl屬性用於設罝標籤元件與窗體上其他沒有標題的元件相關聯,關聯后可以通過鍵盤上的加速鍵使這些元件獲得輸入焦點。
begin
   FThis.Button2.SetFocus; //初始化時將焦點置於Button2上。
   FThis.Label2.ShowAccelChar := True;
   FThis.Label2.Caption := '在目前界面下,按下&A按鍵,Button1獲得焦點';
   FThis.Label2.FocusControl := This.Button1;
end.
1
2
3
4
5
6
獲取焦點

# 3.1.4. Layout 屬性

property Layout: TTextLayout;
1

  該屬性用於指定標籤元件的ClientRect內的文字顯示位置,Layout屬性的可選值如下。

  • tlTop:頂部對齊。
  • tlBottom:底部對齊。
  • tICenter:居中對齊。

# 3.1.5. ShowAccelChar 屬性

property ShowAccelChar: Boolean;
1

  設定該屬性為True時,允許任意字元前新增&記號將出現下劃線。如果要顯示一個&號, 可連續使用兩個&&號。如果設定了FocusControl屬性,則當用戶輸入下劃線字元時,視窗焦點將指向FocusControl屬性指定的有窗體的元件,設定該屬性為False時,在標籤中只顯示標籤名稱,而且FocusControl屬性值無效。

  • 應用
      ShowAccelChar屬性用於設定是否顯示標籤文字中的記號名稱。
begin
  This.Label1.ShowAccelChar := True;
  This.Label1.Caption := 'An &Underlined character appears here';
  This.Label2.ShowAccelChar := False;
  This.Label2.Caption := 'An ampersand (&) appears here';
end.
1
2
3
4
5
6
顯示效果

# 3.1.6. Transparent 屬性

property Transparent: Boolean;
1

  設定該屬性為True時,可透過標籤元件看到其下的元件,例如在一幅影象上新增文字時, 可使用這個屬性將其設為透明顯示,這樣文字框的顯示就會是透明的。

# 3.1.7. Wordwrap 屬性

property Wordwrap: Boolean;
1

  設定該屬性為True時,允許標籤元件顯示多行文字;為False時可以限制標籤文字為單行顯示,超長文字將被截掉。

begin
   This.Label1.WordWrap := True; 
   This.Label1.Caption := '愿中國青年都擺脫冷氣,只是向上走,不必聽自暴自棄者流的話。能做事的做事,'
   + '能發聲的發聲。有一分熱,發一分光。就令螢火一般,也可以在黑暗里發一點光,不必等候炬火。';
   This.Label2.WordWrap := False;
   This.Label2.Caption := '愿中國青年都擺脫冷氣,只是向上走,不必聽自暴自棄者流的話。能做事的做事,'
   + '能發聲的發聲。有一分熱,發一分光。就令螢火一般,也可以在黑暗里發一點光,不必等候炬火。';
end.
1
2
3
4
5
6
7
8

# 3.1.8. Caption 屬性

property Caption: TCaption:
1

  使用該屬性可指定標註元件的文字字串。在字元前包括一個與(&)符號可使一個標註元件的該屬性中該字元以下劃線方式顯示。這種型別的字元稱為「加速符」,使用者按住Alt鍵的同時按下劃線字元即可選取該元件。使用雙與號(&&)可在標題中顯示一個&符號。

# 3.2. 事件

  • TLabel元件主要事件
事 件 描 述
OnContextPopup 與使用者右擊元件或用其他方式(鍵盤)呼叫彈出功能表時產生該組 件,編輯其事件處理程式可在響應使用者行為中建立或顯示元件的彈出功能表。該事件允許應用程式集中響應使用者的各種行為
OnEndDock 與對象的拖動結束后產生該事件,使用這個事件的處理程式可指定行為
OnEndDrag 與對象的拖動結束后產生該事件,使用這個事件的處理程式可指定行為
OnMouseEnter 與游標指針移動到標籤上時,觸發該事件,編輯其斑件處理程式可以在滑鼠移動到標籤上時執行其特定的操作
OnMouseLeave 與游標指針離開標籤時,觸發該事件,編輯其事件處理程式可以在滑鼠游標離開標籤時執行其特定的操作
OnStartDock 當用戶開始拖動元件時產生該事件

# 3.2.1. OnMouseEnter 事件

type TNotifyEvent = procedure (Sender: Tobject) of object; 
property OnMouseEnter: TnotifyEvent;
1
2

  當游標指針移動到標籤上時,觸發該事件,編寫其事件處理程式可以在滑鼠移動到標籤上時執行其特定的操作。

# 3.2.2. OnMouseLeave 事件

type TNotifyEvent = procedure (Sender: TObject) of object; 
property OnMouseLeave: TNotifyEvent;
1
2

  當游標指針離開標籤時,觸發該事件,編寫其事件處理程式可以在滑鼠游標離開標籤時執行其特定的操作。

  • 應用
      當滑鼠移到至標籤上時,標籤變紅色,當滑鼠從標籤上移開時,標籤恢復黑色。
procedure TMyHandler.LABEL2MOUSEENTER;
//滑鼠移動至此處時觸發該事件
begin
  if Sender is TLabel then
    TLabel(Sender).Font.Color := clRed;
end;

procedure TMyHandler.LABEL2MOUSELEAVE;
//滑鼠離開時觸發該事件
begin
  if Sender is TLabel then
    TLabel(Sender).Font.Color := clBlack;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
滑鼠移到標籤上時變紅色

# 4. TEdit元件

  使用TEdit對像將標準Windows編輯元件放在窗體上。編輯元件用於檢索使用者鍵入的文字。編輯元件還可以向用戶顯示文字。   僅向用戶顯示文字時,選擇編輯元件以允許使用者選擇文字並將其複製到剪貼簿。如果不需要編輯元件的選擇功能,請選擇標籤對像(TLabel)。   TEdit實現了TCustomEdit中引入的泛型行為。TEdit發佈了許多從TCustomEdit繼承的屬性,但沒有引入任何新行為。對於專門的編輯元件,請使用TCustomEdit的其他後代類或從中派生。

# 4.1. 屬性

  • TEdit元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Alignment 確定文字在文字編輯元件中的對齊方式
Anchors 指定元件如何停放在父窗體中
AutoSelect 確定元件獲得焦點時是否自動選擇編輯元件中的所有文字
AutoSize 確定編輯元件的高度是否自動調整大小以容納文字
BevelEdges 使用該屬性可獲得或設定元件成斜角的邊緣
BevelInner 使用該屬性可指定內斜角是否具有凸、凹或平坦的外觀
BevelKind 使用該屬性可修改斜角的風格,即斜角的傾斜程度
BevelOuter 使用該屬性可指定外斜角是否具有凸、凹或平坦的外觀,外斜角直接顯示在邊框內和內斜角的外面
BevelWidth 使用該屬性可指定內外斜角的畫素寬度
BiDiMode 指定元件的方向模式
BorderStyle 使用該屬性可影響編輯元件的客戶區域突出效果,其取值為bsSingle時,編輯元件的客戶區域有一個單線邊框;為bsNone時,無邊框
CharCase 確定編輯元件中文字的大小寫
Color 指定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 確定元件如何啟動拖放操作或拖掛操作
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
HideSelection True:編輯元件有焦點時,文字選擇的部分有視覺提示;False:即使編輯元件無焦點,文字選擇的部分仍然有視覺反應
ImeMode 設定該屬性可配置IME處理使用者按鍵的方法。對於亞洲語言字元,IME為前端輸入處理器
ImeName 設定該屬性可配置IME名稱
Lines 使用該方法可操作編輯元件中的單行文字
MaxLength 利用該屬性可限制使用者輸入的字元數,為0表示字元的長度沒有限制
NumbersOnly 僅允許在文字編輯中鍵入數字
OEMConvert 確定在編輯元件中鍵入的字元是否從ANSI轉換為OEM,然後再轉換回ANSI
Paragraph 讀取該屬性可獲得編輯元件中指定的段落格式資訊
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PasswordChar 指示要顯示的字元(如果有),以代替在元件中鍵入的實際字元
PlainText True:忽略RTF文字中的資訊編碼。False:將RTF文字中的格式資訊編輯儲存或流出到檔案
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ReadOnly 確定使用者是否可以更改編輯元件的文字
ScrollBars 確定是否為多行文字編輯器新增水平或垂直的滾動條
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
TabOrder 確定父元件的切換順序
TabStop 確定使用者是否可以通過Tab按鍵選擇元件
Text 包含與元件關聯的文字字串
TextHint Text屬性為空時顯示的提示或訊息
Visible 確定元件是否可見
Ctl3D 確定元件在其父元件區內的對齊方式
DoubleBuffered 確定文字在文字編輯元件中的對齊方式
DragCursor 指定元件如何停放在父窗體中
DragKind 確定元件獲得焦點時是否自動選擇編輯元件中的所有文字
DragMode 確定編輯元件的高度是否自動調整大小以容納文字
Enabled 使用該屬性可獲得或設定元件成斜角的邊緣
Fon 使用該屬性可指定內斜角是否具有凸、凹或平坦的外觀
HideSelection 使用該屬性可修改斜角的風格,即斜角的傾斜程度
ImeMode 使用該屬性可指定外斜角是否具有凸、凹或平坦的外觀,外斜角直接顯示在邊框內和內斜角的外面
ImeName 使用該屬性可指定內外斜角的畫素寬度
MaxLength 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
NumbersOnly 使用該屬性可影響編輯元件的客戶區域突出效果,其取值為bsSingle時,編輯元件的客戶區域有一個單線邊框;為bsNone時,無邊框
OEMConvert 確定編輯元件中文字的大小寫
ParentBiDiMode 指定元件的背景顏色
ParentColor 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制

# 4.1.1. AutoSelect 屬性

property AutoSelect: Boolean;
1

  設定該屬性可以在編輯元件獲得焦點時選中編輯元件中的所有文字。該屬性只能在單行編輯元件中應用。,使用者替代編輯元件中的文字比新增的可能性大時,使用該屬性。

  • True:當TEdit元件獲得輸入焦點時,選中所有的文字。

  • False:當TEdit元件獲得輸入焦點時,不選中所有的文字。

  • 應用
      使用AutoSelect屬效能夠確定在編輯框獲得焦點時是否選中文字。

constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.Edit1.AutoSelect := True;
  FThis.Edit2.AutoSelect := False;
end;

{方法實現  MODULE-REAL}
procedure TMyHandler.BUTTON1CLICK;
//點選Button1,Edit1獲得焦點
begin
  FThis.Edit1.SetFocus;
end;

procedure TMyHandler.BUTTON2CLICK;
//點選Button2,Edit2獲得焦點
begin
  FThis.Button2.SetFocus;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
獲取焦點

# 4.1.2. BorderStyle 屬性

property BorderStyle: TBorderStyle;
1

  使用該屬性可影響編輯元件的客戶區域突出效果,當其取值為bsSingle,則編輯元件的客戶區域會有一個單線邊框;為bsNone,則無邊框。

# 4.1.3. CanUndo 屬性

property CanUndo: Boolean;
1

  讀取該屬性可確定使用者修改文字后是否通過呼叫Undo方法回退,在允許或禁止對應于這些命令的功能表項時這個屬性非常有用。   示例:

begin
    if This.Edit1.CanUndo then 
    This.Edit1.Undo;
end.
1
2
3
4

# 4.1.4. CharCase 屬性

property CharCase: TEditCharCase;
1

  該屬性用於確定編輯元件中文字的大小寫,可將編輯元件中的內容強制為特定的大小寫。   可取值如下:

  • ecNormal:輸入的文字不進行大小寫轉換。

  • ecLowerCase:把輸入的文字強制轉換為小寫。

  • ecUpperCase:把輸入的文字強制轉換為大寫。

  • 應用
      CharCase屬性用於設定是否對Edit中的文字進行大小寫轉換。

procedure TMyHandler.BUTTON1CLICK;
//點選將文字轉換為大寫
begin
  FThis.Edit1.CharCase := ecUpperCase;
end;

procedure TMyHandler.BUTTON2CLICK;
//點選將文字轉換為小寫
begin
  FThis.Edit2.CharCase := ecLowerCase;
end;
1
2
3
4
5
6
7
8
9
10
11
轉換大小寫

# 4.1.5. HideSelection 屬性

property HideSelection: Boolean;
1

  該屬性用於確定當焦點移走後所選文字是否保留視覺提示。設罝為False,編輯元件沒有焦點時,所選文字部分仍保留視覺提示;否則只有在編輯元件獲得焦點時,所選文字部分才保留視覺提示。該屬性不影響選擇的實際值,只是視覺提示。

  • 應用
      HideSelection屬性用於確定當輸入焦點離開時,是否仍然高亮顯示選中的文字。
begin
   This.Edit1.AutoSelect := True;
   This.Edit1.HideSelection := False;
   This.Edit1.SetFocus;
end.
1
2
3
4
5
高亮顯示輸入焦點

# 4.1.6. MaxLength 屬性

property MaxLength: Integer;
1

  利用該屬性可限制使用者輸入的字元數,為0表示字元的長度沒有使用者定義的限制。如果要將編輯元件中的文字複製到固定長度的緩衝區時,可用該屬性限制編輯元件中的文字長度。   設定該屬性並不截斷已存在的文字,而僅在輸入達到界限后阻止使用者輸入更多的文字。   示例

 This.Edit1.MaxLength := 5
1

  Edit1中最多允許存在5個字元,達到5個字元后將無法繼續輸入。

# 4.1.7. Modified 屬性

property Modified: Boolean;
1

  使用該屬性確定編輯元件中的Text屬性是否可修改。如果在應用程式中直接修改編輯元件中的Text屬性,則應將這個屬性設定為True。

  • 應用
      在程式中使用該屬效能夠確定編輯框文字是否發生了變化。
procedure TMyHandler.BUTTON1CLICK;
//檢測Edit1是否有改動
begin
   if FThis.Edit1.Modified then
     ShowMessage('Edit1中內容已經改變');
end;
1
2
3
4
5
6

# 4.1.8. OEMConvert 屬性

property OEMConvert: Boolean;
1

  該屬性用於確定輸入編輯元件中的字元是否從ANSI轉換為OEM,然後轉換為ANSI。要保證編輯元件中輸入的字元轉換為OEM字符集,設定其為True,則使所有字元從ANSI轉換為OEM,然後轉為輸入時的ANSI。如果不需要將文字對映到一個OEM字串,則設定為False可避免轉換的開銷。該屬性大多用在應用程式不用Unicode檔名時在編輯元件中輸入檔名。

  • True:文字框Edit中的文字能從ANSI轉換為OEM。
  • False:文字框Edit中的文字不能從ANSI轉換為OEM

# 4.1.9. PasswordChar 屬性

property PasswordChar: Char;
1

  利用該屬性可建立編輯元件中用代替輸入字元顯示的特殊字元。如果為空字元(ANSI字元為0),則編輯元件顯示正常文字;如果為其他字元,則顯示PasswordChar代替輸入的字元。 該屬性隻影響編輯元件的外觀,Text屬性的值代表輸入的實際值。

  • 應用
begin
  This.Edit1.PasswordChar := '*';
end.
1
2
3
設定后,輸入的字元以*顯示

# 4.1.10. Readonly 屬性

property Readonly: Boolean;
1

  該屬性用於確定使用者是否可改變編輯元件中的文字,為True時,則限制編輯元件只能顯示, 確保元件中的文字不被修改,但允許使用者選擇文字,應用程式可處理所選文字,也可複製到剪 貼板;為False時,則允許編輯元件中的內容。

  • 應用
begin
  This.Edit1.ReadOnly := True;
  This.Edit2.ReadOnly := False;
end.
1
2
3
4

# 4.1.11. SelLength 屬性

property SelLength: Integer;
1

  該屬性用於指定所選文字的字元長度,設定后可改變從SelStart開始前的SelLength字元的選擇。設罝其值大於從SelStart開始到文字結束的字元數,導致全選從SelStart開始到文字結束的字元。此時讀取該屬性返回實際所選取的字元數,而不是設定的值。

  • 應用
    SelLength屬性用於返回在文字框TEdit中選中字元的長度,這樣,在程式中就能通過程式碼使編輯框中的文字部分被選中。
procedure TMyHandler.BUTTON1CLICK;
//點選以選中部分文字
begin
  FThis.Edit1.AutoSelect := True;
  FThis.Edit1.SetFocus;
  FThis.Edit1.SelStart := 1; //設定開始選中的起始位置
  FThis.Edit1.SelLength := Length(FThis.Edit1.Text); //設定被選中區域的長度,延申至字串尾。
end;
1
2
3
4
5
6
7
8
部分文字被選中

# 4.1.12. SelStart 屬性

property SelStart: Integer;
1

  讀取該屬性的值可確定第1個被選字元的位置,0指向第1個字元。如果沒有所選文字, 則該屬性指向游標的位置。設罝這個屬性刪除目前的選擇並將游標位罝指向字元的前面。用法詳見SelLength 屬性。

# 4.1.13. SelText屬性

property SelText: string;
1

  讀取該屬性可確定被選文字的值,設定該屬性可用新的字元牢替換已選文字。如果沒有選擇,但是編輯元件有焦點,則設定該屬性可向游標處插入新的字串。

  • 應用

  在SelLength 屬性的例子中,加入如下程式碼,當Edit1中的文字被選中時,SelText中的內容就是Edit1中選中的內容。

procedure TMyHandler.BUTTON2CLICK;
//顯示目前選中的文字內容
begin
  ShowMessage(FThis.Edit1.SelText);
end;
1
2
3
4
5

# 4.1.14. Text 屬性

property Text: TCaption;
1

  Text屬性用於讀取或設定編輯框中的文字。

# 4.2. 事件

事 件 描 述
OnChange 當編輯元件中的文字發生改變時觸發該事件,編其事件處理程式 可執行特定的功能
OnContextPopup 當用戶右擊元件或用其他方式(鍵盤)呼叫彈出功能表時產生該元件,編輯其事件處理程式可在響應使用者行為中建立或顯示元件的彈出功能表。該事件允許應用程式集中響應使用者的各種行為
OnEndDrag 與對象的拖動結束后產生該事件
OnEnter 當元件獲得輸入焦點時產生該事件
OnExit 輸入焦點從元件移至另一元件時產生該事件
OnKeyPress 當用戶按下單個字元鍵時產生該事件

# 4.3. 方法

  • TEdit元件主要方法
方 法 描 述
Clear 該方法用於刪除編輯元件中的所有文字,可使空字串替換Text屬性
ClearSelection 該方法用於刪除編輯元件中的所選文字
ClearUndo 該方法用於淸除回退緩衝區,以使對文字所做的修改不能回退

# 4.3.1. Clear 方法*

procedure Clear; virtual;
1

  該方法用於刪除編輯元件中的所有文字,使用者可使空字元牢替換Text屬性。如果要刪除所選文字,可使用ClearSelection方法。

# 4.3.2. ClearSelcction 方法*

procedure ClearSelection;
1

  該方法用於刪除編輯元件中的所選文字。如果無選擇文字,則不執行操作;如果選擇全部文字,則刪除所有文字。呼叫該方法與為編輯元件發送WM_CLEAR訊息相同。

# 4.3.3. ClearUndo 方法*

procedure ClearUndo;
1

  該方法用於清除回退緩衝區,以使對文字所做的修改不能回退。使用該方法可確認Text屬性的改變,在呼叫后,CanUndo屬性為False並且Undo方法不執行任何操作。


# 5. TMemo元件

  使用TMemo在窗體上放置標準Windows多行編輯元件。多行編輯框允許使用者輸入多行文字。它們適合表示冗長的資訊。   TMemo實現了TCustomMemo中引入的通用行為。TMemo發佈了許多從TCustomMemo繼承的屬性,但沒有引入任何新行為。   注意:在Win9x下,此元件的文字限制為64k。

# 5.1. 屬性

  • TMemo元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Alignment 確定文字在文字編輯元件中的對齊方式
Anchors 指定元件如何停放在父窗體中
BevelEdges 使用該屬性可獲得或設定元件成斜角的邊緣
BevelInner 使用該屬性可指定內斜角是否具有凸、凹或平坦的外觀
BevelKind 使用該屬性可修改斜角的風格,即斜角的傾斜程度
BevelOuter 使用該屬性可指定外斜角是否具有凸、凹或平坦的外觀,外斜角直接顯示在邊框內和內斜角的外面
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
BorderStyle 使用該屬性可影響編輯元件的客戶區域突出效果,其取值為bsSingle時,編輯元件的客戶區域有一個單線邊框;為bsNone時,無邊框
CharCase 確定編輯元件中文字的大小寫
Color 指定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 確定元件如何啟動拖放操作或拖掛操作
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
HideSelectio True:編輯元件有焦點時,文字選擇的部分有視覺提示;False:即使編輯元件無焦點,文字選擇的部分仍然有視覺反應
ImeMode 設定該屬性可配置IME處理使用者按鍵的方法。對於亞洲語言字元,IME為前端輸入處理器
ImeName 設定該屬性可配置IME名稱
Lines 包含備忘錄元件中的各行文字
MaxLength 利用該屬性可限制使用者輸入的字元數,為0表示字元的長度沒有限制
OEMConvert 確定在編輯元件中鍵入的字元是否從ANSI轉換為OEM,然後再轉換回ANSI
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ReadOnly 確定使用者是否可以更改編輯元件的文字
ScrollBars 確定是否為多行文字編輯器新增水平或垂直的滾動條
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
TabOrder 確定父元件的切換順序
TabStop 確定使用者是否可以通過Tab按鍵選擇元件
Visible 確定元件是否可見
WantReturns 確定使用者是否可以在文字中插入返回字元
WantTabs 確定使用者是否可以在文字中插入製表符
WordWrap 確定編輯元件是否插入軟回車,以便文字在右邊距處換行

# 5.1.1. Alignment 屬性

property Alignment: TAlignment;
1

  確定編輯元件中文字的對齊方式。   可選值如下:

  • taLeftJustify:輸入的文字在元件的左邊對齊。
  • taCenter:輸入的文字在元件的居中對齊。
  • taRightJustify:輸入的文字在元件的右邊對齊。

# 5.1.2. CaretPos 屬性

Propetry CaretPos:TPoint;
1

  指定相對於編輯器的客戶區域原點的X和Y的位置。根據文字字元確定游標的位置時應使用SelStart屬性。

  • 應用
      指出游標在TMemo元件中的位置。如顯示目前游標在備註框中的行與列。
procedure TMyHandler.MEMO1MOUSEMOVE;
begin
  FThis.Label1.Caption := '目前位置:' + IntToStr(FThis.Memo1.CaretPos.X) + ',' 
  + IntToStr(FThis.Memo1.CaretPos.Y);
end;
1
2
3
4
5

# 5.1.3. Lines 屬性

property Lines: TStrings;
1

  使用該屬效能夠以行為單位操作文字編輯器的文字,該屬性是TStrings對象,所以TStrings的方法可用其完成各種操作,如計算文字的行數、新增一行、刪除一行或用新的文字替代一行等。如果要處理所有文字,則使用Text屬性;如果要處理文字的單行,則最好使用這個屬性。雖然該屬性作為TStrings的子類實現,但其不支援列表中與字串對像相關的實現。

  • 應用
      在程式中如果需要向備註框中新增數據,則可以使用Lines屬性的相關方法。
procedure TMyHandler.BUTTON1CLICK;
//點選以新增文字
begin
  FThis.Memo1.Lines.Add('愛招飛系列產品');
  FThis.Memo1.Lines.Add('Smart智慧控制平臺');
  FThis.Memo1.Lines.Add('快速開發智能監測程式');
end;
1
2
3
4
5
6
7

# 5.1.4. ScrollBars 屬性

property ScrollBars: TScrollStyle;
1

  該屬性用於確定是否為多行文字編輯器新增水平或垂直滾動條。   可選值如下。

  • ssNone:沒有滾動條。
  • ssBoth:水平、垂直都有滾動條。
  • ssHorizontal:水平滾動條。
  • ssVerticals垂直滾動條。

# 5.1.5. WantReturns 屬性

property WantReturns: Boolean;
1

  該屬性用於確定Enter鍵是否為換行符,為True時,允許使用者輸入Enter鍵時文字換行; 否則輸入Enter鍵時允許操作窗體而不是換行。例如在窗體中放置一個預設(如OK)按鈕和一 個文字編輯元件,如果該屬性為False,則按Enter鍵選擇OK按鈕;杏則將在文字編輯器中插 入一個換行符。該屬性為False時,使用者按下Ctrl+Enter組合鍵,也可在文字編輯器中插入一個換行符。

# 5.1.6. WantTabs 屬性

property WantTabs: Boolean;
1

  該屬性用於確定使用者可否插入製表符,為True時,允許在編輯文字中插入製表符;否則輸 入Tab鍵將選擇窗體上的下一個元件。設定該屬性為True時,使用者可在編輯器元件中製表,但是不能輸出。

# 5.1.7. Wordwrap 屬性

property Wordwrap: Boolean;
1

  該屬性用於確定編輯元件是否插入了軟回車,以使文字到達右邊界時換行。為True時,將自動換行填充客戶區域。這種換行只是爲了裝飾文字,而不是在文字中真正插入回車符;為False 時,則只有在文字中輸入回車符時才能換行。設罝該屬性為True時,不需要使用水平方向的滾動條。

# 5.1.8. CanUndo 屬性

property CanUndo: Boolean;
1

  讀取該屬性可確定使用者修改文字後足否通過呼叫Undo方法回退,在允許或禁止對應于這些命令的功能表項時這個屬性非常有用。 示例程式碼:

begin
if FThis.Memo1.CanUndo then
    FThis.Memo1.Undo;
end;
1
2
3
4

# 5.1.9. HideSelection 屬性

property HideSelection: Boolean;
1

  該屬性用於確定焦點移走後所選文字是否保留視覺提示。設定為False並且編輯元件沒有焦點時,所選文字部分仍保留視覺提示;否則只有在編輯元件獲得焦點時,所選文字部分才保留視覺提示。該屬性不影響選擇的實際值,只是視覺提示。

# 5.1.10. MaxLength 屬性

property MaxLength: Integer;
1

  利用該屬性可限制使用者輸入的字元數,為0,表示字元的長度沒有使用者定義的限制。如果要將編輯元件中的文字複製到同定長度的緩衝區時,可用該屬性限制編輯元件中的文字長度。設定該屬性並不截斷已存在的文字,而僅在輸入達到界限后阻止使用者輸入更多的文字。

# 5.1.11. Modified 屬性

property Modified: Boolean;
1

  使用該屬性可確定編輯元件中的Text屬性是否可修改。如果在應用程式中直接修改編輯元件中的文字,則應將這個屬性設定為True。 程式碼示例

if FThis.Memo1.Modified then 
    ShowMessage('文字框中的數據發生了改變');
1
2

# 5.2. 事件

  • TMemo元件主要事件
事 件 描 述
OnChange 當編輯元件中的文字發生改變時觸發該事件,編其事件處理程式 可執行特定的功能
OnContextPopup 當用戶右擊元件或用其他方式(鍵盤)呼叫彈出功能表時產生該元件,編輯其事件處理程式可在響應使用者行為中建立或顯示元件的彈出功能表。該事件允許應用程式集中響應使用者的各種行為
OnEndDrag 與對象的拖動結束后產生該事件
OnExit 輸入焦點從元件移至另一元件時產生該事件

# 5.3. 方法

  • TMemo元件主要方法
方 法 描 述
Clear 刪除編輯元件中的所有文字,可用空字串替換Text屬性
ClearSelection 刪除編輯元件中的所選文字
ClearUndo 淸除回退緩衝區,以使對文字所做的修改不能回退
SelectAll 選中備註框元件中的所有文字
Undo 取消從最後呼叫ClearUndo方法以對Text屬性所做的所有修改

# 6. TButton元件

  使用TButton在窗體上放置標準按鈕。TButton引入了幾個屬性來控制對話方塊設定中的行為。使用者選擇按鈕元件來啟動操作。命令按鈕最常用的事件是 OnClick事件,該事件在使用者單擊按鈕時被觸發。   要使用顯示點陣圖而不是標籤的按鈕,請使用TBitBtn。要使用可以保持在按下位置的按鈕,請使用TSpeedButton。   注意:由於TButton標題始終居中,因此更改BiDi對齊設定是無效的。

# 6.1. 屬性

  • TButton元件主要屬性
屬性 功能說明
Action 指定與元件關聯的操作
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
Cancel 確定按下Esc鍵時按鈕的OnClick事件處理程式是否執行
Caption 指定標識使用者元件的文字字串
CommandLinkHint 文字顯示為命令鏈接按鈕標題下方的提示
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Default 確定按下Enter鍵時按鈕的OnClick事件處理程式是否執行
DisabledImageIndex 禁用按鈕狀態的影象索引
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 確定元件如何啟動拖放操作或拖掛操作
DropDownMenu 拆分按鈕下拉功能表
ElevationRequired 在按鈕上放置盾牌圖示,表示需要提升訪問許可權
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
HotImageIndex 熱鍵狀態的影象索引
ImageAlignment 按鈕上的影象對齊
ImageIndex 正常按鈕狀態的影象索引
ImageMargins 按鈕上的影象邊距
Images 按鈕的影象列表
ModalResult 確定按鈕是否以及如何關閉其(模態)父窗體
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
PressedImageIndex 按下按鈕狀態的影象索引
SelectedImageIndex 所選按鈕狀態的影象索引
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
Style 按鈕的樣式
TabOrder 確定父元件的切換順序
TabStop 確定使用者是否可以通過Tab按鍵選擇元件
Visible 確定元件是否可見
WordWrap 指定按鈕文字是否換行以適合元件的寬度

# 6.1.1. Cancel 屬性

property Cancel: Boolean;
1

  該屬性用於確定,Escape鍵被按下時是否執行按鈕的OnClick事件處理程式。如果Cancel 為True,則執行。雖然應用程式可有多個Cancel按鈕,但是窗體僅呼叫元件順序中第1個可視的Cancel按鈕的OnClick事件處理程式。

  • True:使用者按下Esc鍵時TButton元件的OnClick事件被觸發。

  • False:使用者按下Esc鍵時TButton元件的OnClick事件不被觸發。

  • 應用
      設定當用戶按Esc鍵時是否觸發OnClick事件,預設值為False。

constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.Button1.Cancel := True;
end;

procedure TMyHandler.BUTTON1CLICK;
//點選按鈕以清空
var
  i: Integer;
begin
  for i := 0 to FThis.Panel1.ControlCount - 1 do
  begin
    if FThis.Panel1.Controls[i] is TEdit then
      TEdit(FThis.Panel1.Controls[i]).Text := '';
  end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# 6.1.2. Default 屬性

property Default: Boolean;
1

  當按下Enter鍵時,通過該屬性來確定元件的OnClick事件處理程式是否被執行。如果Default為True,則執行。雖然應用程式可有多個Default按鈕,但是窗體僅呼叫元件順序中第 1個可視Default按鈕的OnClick事件處理程式。而任何一個獲得焦點的按鈕可變為臨時 Default的按鈕。如果使用者在按下Enter鍵前選擇了另一個按鈕,則執行所選按鈕的OnClick事件處理程式。

  • True:使用者按下Enter鍵時TButton元件的OnClick事件被觸發。

  • False:使用者按下Enter鍵時TButton元件的OnClick事件不被觸發。

  • 應用
      在開發程式時,如果需要在其他非按鈕元件獲得焦點時,按Enter鍵響應按鈕的OnClick事件,可以設定按鈕的Default屬性為True。

constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.Button1.Default := True;
  FThis.Edit1.SetFocus;
end;

{方法實現  MODULE-REAL}
procedure TMyHandler.BUTTON1CLICK;
begin
  ShowMessage('按鈕已被按下');
end;
1
2
3
4
5
6
7
8
9
10
11
12

# 6.1.3. Caption 屬性

property Caption: TCaption;
1

  Caption屬性用於設定按鈕的標題。   如果需要在程式中動態地設定按鈕標題,可以修改Caption屬性,程式碼如下:

FThis.Button1.Caption :=  '確定';
1

# 6.1.4. Wordwrap 屬性

property Wordwrap: Boolean;
1

  Wordwrap屬性用於標識按鈕文字是否自動換行以適應按鈕的寬度。

  • True:標籤中的文字長度,超出按鈕長度時自動換行。
  • False:標籤中的文字長度,超出按鈕長度時不自動換行。

# 6.2. 事件

  • TButton主要事件
事 件 描 述
OnClick 當用戶用滑鼠單擊按鈕時觸發OnClick事件

# 6.2.1. OnClick 事件

property OnClick: TNotifyEvent;
1

  當用戶用滑鼠單擊按鈕時觸發OnClick事件。


# 7. TCheckBox元件

  TCheckBox元件為使用者提供了一個選項。使用者可以選中該框以選擇該選項,或取消選中該選項以取消選擇該選項。

# 7.1. 屬性

  • TCheckBox元件主要屬性
屬性 功能說明
Action 指定與元件關聯的操作
Align 確定元件在其父元件區內的對齊方式
Alignment 確定覈取方塊標籤是否與覈取方塊的左側或右側對齊
AllowGrayed 確定覈取方塊是否可以處於「灰色」狀態
Anchors 指定元件如何停放在父窗體中
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
Caption 指定標識使用者元件的文字字串
Checked 指定是否選中按鈕元件
Color 指定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 確定元件如何啟動拖放操作或拖掛操作
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
State 指示是選中,取消選中還是灰顯覈取方塊
TabOrder 確定父元件的切換順序
TabStop 確定使用者是否可以通過Tab按鍵選擇元件
Visible 確定元件是否可見
WordWrap 指定按鈕文字是否換行以適合元件的寬度

# 7.1.1. Alignment 屬性

property Alignment: TLeftRight;
1

  該屬性用於控制覈取方塊標題的位罝,設罝為taRightlustify時,標題顯示在覈取方塊右邊;設定為taLeftJustify時,顯示在左邊。

  • 應用
 begin
   This.CheckBox1.Alignment := taRightJustify;
   This.CheckBox1.Alignment := taLeftJustify;
 end.
1
2
3
4

# 7.1.2. AllowGrayed 屬性

property AllowGrayed: Boolean;
1

  該屬性用於確定覈取方塊是否處於灰色狀態,設定為True時,覈取方塊有3種可能的狀態,即checked、unchecked和grayed;否則只有兩種可能的狀態:checked 和 unchecked。

# 7.1.3. Checked 屬性

property Checked: Boolean;
1

  當覈取方塊是選中狀態時,該屬性值為True;當覈取方塊是未選中或灰色狀態時,為False。

  • 應用
      在窗體中新增TMemo元件。如果選項被選中,則新增選項資訊到TMemo元件中。
procedure TMyHandler.BUTTON1CLICK;
//點選后,提交checkbox中的內容屬性
var
  Str : String;
begin
  if FThis.CheckBox1.Checked = True then
    Str := FThis.CheckBox1.Caption;
  if FThis.CheckBox2.Checked = True then
    Str := Str + ' ' + FThis.CheckBox2.Caption;
  if FThis.CheckBox3.Checked = True then
    Str := Str + ' ' + FThis.CheckBox3.Caption;
  if FThis.CheckBox4.Checked = True then
    Str := Str + ' ' + FThis.CheckBox4.Caption;
  FThis.Memo1.Lines.Clear;  
  FThis.Memo1.Lines.Insert(0, '已選中的選項:');
  FThis.Memo1.Lines.Insert(1, Str + ' ');
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# 7.1.4. State 屬性

property State: TCheckBoxState;
1

  該屬性指定覈取方塊是選中、未選中或變灰狀態。

  • cbUnchecked:覈取方塊沒有複選標記,表示使用者未選中該選項。

  • cbChecked:覈取方塊有複選標記,表示使用者已選中該選項。

  • cbGrayed:覈取方塊有複選標記,但為變灰狀態。

  • 應用
      設定窗體中的TCheckBox元件的AllowGrayed屬性為True,用State屬性判斷該元件的狀態。

constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.CheckBox1.AllowGrayed := True;
end;

procedure TMyHandler.BUTTON1CLICK;
//設定窗體中的TCheckBox元件的AllowGrayed屬性為True,用State屬性判斷該元件的狀態,
var
  cou: Integer;
begin
  FThis.Memo1.Lines.Clear;
  for cou := 0 to FThis.GroupBox1.ControlCount - 1 do
  begin
    if TCheckBox(FThis.GroupBox1.Controls[cou]).State = cbUnchecked then
      FThis.Memo1.Lines.Add(TCheckBox(FThis.GroupBox1.Controls[cou]).Caption + ':沒有選中');
    if TCheckBox(FThis.GroupBox1.Controls[cou]).State = cbchecked then
      FThis.Memo1.Lines.Add(TCheckBox(FThis.GroupBox1.Controls[cou]).Caption + ':選中');
    if TCheckBox(FThis.GroupBox1.Controls[cou]).State = cbGrayed then
      FThis.Memo1.Lines.Add(TCheckBox(FThis.GroupBox1.Controls[cou]).Caption + ':變為灰色');    
  end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

# 8. TRadioButton元件

  TRadioButton元件封裝了 Windows選項按鈕,有時也稱為單選按鈕。選項按鈕在Windows中很常見,顯示為一個帶文字標題的圓形外框圖。一組選項按鈕中的選項是相互排斥的,同一 時刻只能有一個單選按鈕被選中。   預設情況下,直接包含在同一視窗元件容器中的所有單選按鈕(如TRadioGroup或TPanel)都會進行分組。例如,窗體上的兩個單選按鈕只有在包含在單獨的容器(例如兩個不同的組框)中時才能同時檢查。

# 8.1. 屬性

  • TRadioButton元件主要屬性
屬性 功能說明
Action 指定與元件關聯的操作
Align 確定元件在其父元件區內的對齊方式
Alignment 確定標題相對於單選按鈕的位置
Anchors 指定元件如何停放在父窗體中
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
Caption 指定標識使用者元件的文字字串
Checked 確定是否選中了單選按鈕所代表的選項
Color 指定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 確定元件如何啟動拖放操作或拖掛操作
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
TabOrder 確定父元件的切換順序
TabStop 確定使用者是否可以通過Tab按鍵選擇元件
Visible 確定元件是否可見
WordWrap 指定按鈕文字是否換行以適合元件的寬度

# 8.1.1. Alignment 屬性

property Alignment: TLeftRight;
1

  該屬性用於確定相對於單選按鈕的標題位置:取值為TaLeftJustify時,顯示在單選按鈕的左邊;取值為TaRightlustify時,顯示在單選按鈕的右邊。不要將Alignment屬性和單選按鈕文字區的標題對齊相混淆。標題總是左對齊的。 該屬性只控制文字區出現在元件的一邊。   Alignment屬性的可選值如下。

  • taLeftJustify:標題顯示在圓形按鈕的左側。
  • taRightJustify:標題顯示在圓形按鈕的右側。 圖示

# 8.1.2. Checked 屬性

property Checked: Boolean;
1

  該屬性用於確定單選按鈕足否被選中,若設定為True,則選中,並取消同一容器中其他所有單選按鈕的選擇;否則取消選擇。

  • True:可選擇該元件,並使同組的其他元件恢復未選狀態。
  • False:該元件不是選中狀態。

# 8.2. 方法

  • TRadioButton元件主要方法列表
方法 功能描述
GetControlsAlignment 返回元件中任何文字的對齊方式

# 9. TListBox元件

  使用TListBox顯示使用者可選擇、新增或刪除的專案的可滾動列表。TListBox是Windows列表框元件的包裝器。對於專門的列表框,使用TCustomListBox的其他子類或從TCustomListBox派生自己的類。   TListBox實現了TCustomListBox中引入的泛型行為。TListBox發佈了許多從TCustomListBox繼承的屬性,但沒有引入任何新行為。

# 9.1. 屬性

  • TListBox元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
AutoComplete 確定使用者是否可以通過在列表中鍵入來聚焦專案
AutoCompleteDelay 指定按鍵和嘗試自動填充欄位之間的延遲
BevelEdges 使用該屬性可獲得或設定元件成斜角的邊緣
BevelInner 使用該屬性可指定內斜角是否具有凸、凹或平坦的外觀
BevelKind 使用該屬性可修改斜角的風格,即斜角的傾斜程度
BevelOuter 使用該屬性可指定外斜角是否具有凸、凹或平坦的外觀,外斜角直接顯示在邊框內和內斜角的外面
BevelWidth 使用該屬性可指定內外斜角的畫素寬度
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
BorderStyle 確定列表框是否具有邊框
Color 指定元件的背景顏色
Columns 指定多列列表框中的列數,無需滾動即可顯示
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 確定元件如何啟動拖放操作或拖掛操作
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
ExtendedSelect 使用Shift和CTRL鍵使列表項多選操作
Font 確定元件內顯示的文字字型
ImeMode 設定該屬性可配置IME處理使用者按鍵的方法。對於亞洲語言字元,IME為前端輸入處理器
ImeName 設定該屬性可配置IME名稱
IntegralHeight 確定列表框是否顯示部分專案
ItemHeight 指定所有者-繪製列表框中專案的高度(以畫素為單位)
Items 包含列表框中顯示的字串
MultiSelect 指定使用者是否可以選擇多個專案
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ScrollWidth 指定列表框可以水平滾動的寬度(以畫素為單位)
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
Sorted 指定列表框中的專案是否按字母順序排列
Style 確定列表框是標準框還是所有者繪圖以及它是否為虛擬列表框
TabOrder 確定父元件的切換順序
TabStop 確定使用者是否可以通過Tab按鍵選擇元件
TabWidth 指定列表框中選項卡的大小
Visible 確定元件是否可見

# 9.1.1. AutoComplete 屬性

properly AutoComplete: Boolean;
1

  該屬性用於設定是否自動將焦點移動到使用者鍵盤輸入的選項上。

  • 應用
      輸入字元時,可以快速定位選項在ListBox中的位置。
begin
  This.ListBox1.Items.Add('China');
  This.ListBox1.Items.Add('American');
  This.ListBox1.Items.Add('Japan');
  This.ListBox1.Items.Add('England');
  This.ListBox1.Items.Add('Gemany');
  This.ListBox1.Items.Add('Chile');
  This.ListBox1.AutoComplete := True;
end.
1
2
3
4
5
6
7
8
9

# 9.1.2. BorderStyle 屬性

property BorderStyle: TBorderStyle;
1

  該屬性用於設定TListBox元件是否具有邊框。   取值:bsNone, bsSingle。

# 9.1.3. Columns 屬性

property Columns: Integer;
1

  該屬性用於指定TListBox的可見列數。

  • 應用
      設定Columns屬效能夠改變TListBox的可見列數。
begin
  This.ListBox1.Items.Add('China');
  This.ListBox1.Items.Add('American');
  This.ListBox1.Items.Add('Japan');
  This.ListBox1.Items.Add('England');
  This.ListBox1.Items.Add('Gemany');
  This.ListBox1.Items.Add('Chile');
  This.ListBox1.Columns := 0;
   
  This.ListBox2.Items.Add('China');
  This.ListBox2.Items.Add('American');
  This.ListBox2.Items.Add('Japan');
  This.ListBox2.Items.Add('England');
  This.ListBox2.Items.Add('Gemany');
  This.ListBox2.Items.Add('Chile');
  This.ListBox2.Columns := 1;
  
  This.ListBox3.Items.Add('China');
  This.ListBox3.Items.Add('American');
  This.ListBox3.Items.Add('Japan');
  This.ListBox3.Items.Add('England');
  This.ListBox3.Items.Add('Gemany');
  This.ListBox3.Items.Add('Chile');
  This.ListBox3.Columns := 2;
end.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
設定Columns屬效能夠改變TListBox的可見列數,改變該屬性的效果圖

# 9.1.4. Count 屬性

property Count: Integer;
1

  該屬性用於獲得TListBox元件中的選項數。

  • 應用
      在程式中可以通過Count統計選項個數,向窗體中新增一個TLabel元件,設定該元件的Caption屬性為「列表中共有%d個選項。」。
begin
  This.Label1.Caption := '列表中共有%d個選項';
  This.ListBox1.Items.Add('China');
  This.ListBox1.Items.Add('American');
  This.ListBox1.Items.Add('Japan');
  This.ListBox1.Items.Add('England');
  This.ListBox1.Items.Add('Gemany');
  This.ListBox1.Items.Add('Chile');
  This.Label1.Caption := Format(This.Label1.Caption,[This.ListBox1.Count]);
end.
1
2
3
4
5
6
7
8
9
10

# 9.1.5. ExtendedSelect 屬性

property ExtendedSelect: Boolean;
1

  該屬性用於決定是否可在TListBox中選取一個範圍內的選項。

  • 應用
    當MultiSelect為True時該屬性才發揮作用,能夠選取連續的幾個選項。
begin
  This.ListBox1.MultiSelect := True;
  This.ListBox1.Items.Add('China');
  This.ListBox1.Items.Add('American');
  This.ListBox1.Items.Add('Japan');
  This.ListBox1.Items.Add('England');
  This.ListBox1.Items.Add('Gemany');
  This.ListBox1.Items.Add('Chile');
end.
1
2
3
4
5
6
7
8
9

# 9.1.6. IntegralHeight 屬性

property IntegralHeight: Boolean;
1

  該屬性用於設定TListBox是否部分顯示那些顯示不全的選項。

# 9.1.7. ItemHeight 屬性

property ItemHeight: Integer;
1

  該屬性用於設定TListBox中的選項高度。

# 9.1.8. Itemlndex 屬性

property Itemlndex: Integer;
1

  該屬性用於指定和獲取在目前列表中選擇的選項。

  • 應用
      通過Itemlndex屬效能夠得到目前所選擇的選項。
constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.ListBox1.Items.Add('China');
  FThis.ListBox1.Items.Add('American');
  FThis.ListBox1.Items.Add('Japan');
  FThis.ListBox1.Items.Add('England');
  FThis.ListBox1.Items.Add('Gemany');
end;

procedure TMyHandler.LISTBOX1CLICK;
//點選以顯示目前選擇的選項
begin
  FThis.Label1.Caption := Format('目前選項: %s',
  [FThis.ListBox1.Items.Strings[FThis.ListBox1.ItemIndex]]);
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 9.1.9. Items 屬性

property Items: TStrings;
1

  該屬性用於指定TListBox中包含的所有選項。

  • 應用
      通過Items屬效能夠對TListBox中的每個選項進行操作
constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.ListBox1.Items.Add('China');
  FThis.ListBox1.Items.Add('American');
  FThis.ListBox1.Items.Add('Japan');
  FThis.ListBox1.Items.Add('England');
  FThis.ListBox1.Items.Add('Gemany');
end;

{方法實現  MODULE-REAL}
procedure TMyHandler.BUTTON1CLICK;
//新增Edit1中的內容至ListBox
begin
  if FThis.Edit1.Text <> '' then
  begin
    FThis.ListBox1.Items.Add(FThis.Edit1.Text);
  end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# 9.1.10. MultiSelect 屬性

property MultiSelect: Boolean;
1

  該屬性用於決定是否使用一次選擇多項的功能。示例詳見ExtendedSelect 屬性

# 9.1.11. ScrollWidth 屬性

property ScrollWidth: Integer;
1

  該屬性用於指定列表框的寬度,當該屬性的值大於列表框寬度時將顯示水平滾動條,否則隱藏滾動條。

# 9.1.12. SelCount 屬性

property SelCount: Integer;
1

  該屬性返回目前選中的選項總數量。

  • 應用
      通過該屬效能夠返回選中選項的總數量。
constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.ListBox1.MultiSelect := True;
  FThis.ListBox1.Items.Add('China');
  FThis.ListBox1.Items.Add('American');
  FThis.ListBox1.Items.Add('Japan');
  FThis.ListBox1.Items.Add('England');
  FThis.ListBox1.Items.Add('Gemany');
  FThis.ListBox1.Items.Add('Chile');
end;

procedure TMyHandler.LISTBOX1CLICK;
begin
  FThis.Label1.Caption := Format('總共選擇了%d個選項!',[FThis.ListBox1.SelCount]);
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

# 9.1.13. Selected 屬性

property Selected[Index: Integer]: Boolean;
1

  該屬性返回指定選項是否被選中。Index:索引號,該索引號為選項的編號。

# 9.1.14. Sorted 屬性

property Sorted: Boolean;
1

  該屬性用於設定TListBox中的選項是否按字母順序排列。

# 9.1.15. Style 屬性

property Style: TListBoxStyle;
type TListBoxStyle = (lbStandard, IbOwnerDrawFixed, lbOwnerDraw Variable, lbVirtual, lbVirtualOwnerDraw);
1
2

  該屬性用於確定TListBox元件的風格。

  • lbStandard:所有的選項都是字串,並且高度相同。
  • IbOwnerDrawFixed:列表中每一項的高度由ItemHeight屬性抱定,且與每一項重繪時都會觸發 OnDrawItem事件來繪製選項。
  • IbOwnerDrawVariable:列表框中每一項的高度是可變的,並且與IbOwnerDrawFixed一樣會觸發OnDrawItem事件,但是選擇該選項還會觸發OnMeasureltem事件來設定每一項的高度。
  • lbVirtual:列表是一個虛表,必須為列表指出選項的數量,必須為列表實現OnData、OnDataFind、 OnDataObject 事件。
  • lbVirtualOwnerDraw:列表是一個虛表而且能夠自繪,必須為列表指出選項的數量,必須為列表實現 OnDrawItem 、OnData OnDataFind、OnDataObject事件。

# 9.1.16. TabWidth 屬性

property TabWidth: Integer;
1

  該屬性用於設罝Tab製表符的寬度。

# 9.1.17. Toplndex 屬性

property Toplndex: Integer;
1

  該屬性用於設定目前所能看到的選項中在最頂端的選項的索引編號。

# 9.2. 事件

  • TListBox主要事件
事 件 描 述
OnContextPopup 當右擊該元件時觸發該事件
OnData 當virtual型別的TListBox需要補充選項中的文字時觸發該事件

# 9.2.1. OnData 事件

property OnData: TLBGetDataEvent;
type 
  TLBGetDataEvent = procedure(Control: TWinControI; Index: Integer; var Data: String) of object;
1
2
3

  OnData事件使得TListBox能夠動態地載入數據項,在程式中能夠動態地為TListBox元件新增和修改數據項,或者為數據項賦值。這種機制大大增加了 TListBox使用的靈活性,應用程式碼如下:

type
  TMyHandler = class(TForm)  
var
  MyItem : Array [0..9] of String;
private 
  FThis:TBaseForm; 
Public 
  constructor Create(AOwner: TComponent); override;
{模組聲明  MODULE-DECLARE}
  procedure ListBox1Data(Control: TWinControl; Index: Integer; var Data: string);
end;

constructor TMyHandler.Create(AOwner: TComponent);
begin
  FThis :=TBaseForm(AOwner);
  FThis.ListBox1.Style := lbVirtual;
  MyItem[0] := '張三';
  MyItem[1] := '李四';
  MyItem[2] := '王五';
  MyItem[3] := '趙六';
  FThis.ListBox1.Count := 4;
end;

{方法實現  MODULE-REAL}
procedure TMyHandler.ListBox1Data;
begin
  Data := MyItem[index];
end;

var
  FMyHandler:TMyHandler;
begin
  FMyHandler := TMyHandler.Create(this);
{事件繫結  MODULE-BIND}
  this.ListBox1.OnData := FMyHandler.ListBox1Data;
end.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

# 9.3. 方法

  • TListBox主要方法
方 法 描 述
AddItem 向TListBox中新增一個選項
Clear 清空列表中的所有選項
ClearSelection 取消所有已經選擇的選項
ItemAtPos 返回指定座標點上的選項索引
DeleteSelected 刪除所選擇的選項
SelectAll 選擇TListBox中的所有選項
MoveSelection 將所有選擇的選項移動到另一個TListBox元件中

# 9.3.1. AddItem 方法

procedure AddItem(Item: String; AObject: TObject);
1

  該方法用於向TListBox中新增一個選項。其中Item為顯示字串的選項,AObject為關聯的對象選項。

  向TListBox中新增一項,例如新增一個Modbus設備,示例程式碼如下:

  FThis.ListBox1.AddItem('Modbus Device 1',FThis.ModbusRTUReadChannel1.ModbusList[0]);
1

# 9.3.2. Clear 方法

procedure Clear;
1

  該方法用於清空列表中的所有選項。

# 9.3.3. ClearSelection 方法

procedure ClearSelection;
1

  取消所有已經選擇的選項。在TListBox允許多選(MultiSelect為True)的情況下,如果想要取消所選擇的選項,則可以呼叫ClearSelection 方法,示例如下:

procedure TMyHandler.Button1Click;
begin
  FThis.ListBox1.ClearSelection;
end;
1
2
3
4

# 9.3.4. ItemAtPos 方法

function ItemAtPos(Pos: TPoint; Existing: Boolean): Integer;
1

  該方法用於返回指定座標點上的選項索引。

  • Pos: 座標點。
  • Existing: 是否返回現有選項,如果Existing為True,則當座標點沒有選項時返回-1;如果 Existing為False,則當座標點沒有選項時返回最後一個選項的索引。
  • 返回值: 返回一個表示目前座標所在項的索引的整型值。

  在程式運行時,可以通過滑鼠移動訊息處理函式來獲得目前滑鼠所在的選項,程式碼如下:

{模組聲明  MODULE-DECLARE}
procedure ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X: Integer; Y: Integer);

...

procedure TMyHandler.ListBox1MouseMove;
var 
  s: TPoint;
  i: Integer;
begin
   s.X := x;
   s.Y := y;
   i := FThis.ListBox1.ItemAtPos(s, True);
   FThis.Label1.Caption := '滑鼠指向:' + FThis.ListBox1.Items.Strings[i];
end;

...
{事件繫結  MODULE-BIND}
  this.ListBox1.OnMouseMove := FMyHandler.ListBox1MouseMove;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# 9.3.5. DeleteSelected 方法

procedure DeleteSelected; override;
1

  該方法用於刪除所選擇的選項。在程式運行時如果想刪除某些選項的話就要用到該方法,在TListBox中選擇選項,然後呼叫DeleteSelected方法就能夠將選中的選項刪除。該方法在Style為lbStandard時能夠刪除列表中的選項,如果在Style為其他值時必須提供其他操作。

  FThis.ListBox1.DeleteSelected;
1

# 9.3.6. SelectAll 方法

procedure SelectAll;override;
1

  該方法用於選擇TListBox中的所有選項。

# 9.3.7. MoveSelection 方法

procedure MoveSelection(Destination: TCustomListControl); virtual;
1

  該方法將所有選擇的選項移動到另一個TListBox元件中。

  • Destination: 移動目標,可以是任何TCustomListControl繼承下來的元件。

  在兩個TListBox中移動選項,使用MoveSelection方法是最方便的,程式碼如下:

  FThis.ListBox1.MoveSelection(FThis.ListBox2);
1

# 10. TComboBox 元件

  TComboBox元件是一個編輯框,其上附有可滾動的下拉選單。使用者可以從列表中選擇專案或直接在編輯框中輸入。   注意:TComboBox中按鈕的寬度等於Windows用於滾動條的寬度。此寬度取決於使用者選擇的顏色方案(通過右鍵單擊桌面,選擇「屬性」,然後選擇「外觀」)。在WindowsXP上,使用者可以通過單擊「高級」按鈕並選擇滾動條作為專案來專門更改滾動條的寬度。如果仔細調整組合框的大小以使所有文字都可見,則以不同顏色方案運行的使用者可能會發現文字被按鈕遮擋。一種解決方案是在開發應用程式時將滾動條設定為寬。大多數配色方案使用最多21畫素寬的滾動條。

# 10.1. 屬性

  • TComboBox元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
AutoCloseUp 指定當使用者選擇專案時,下拉選單是否自動關閉
AutoComplete 鍵入時匹配列表項的位置
AutoCompleteDelay 指定按鍵和嘗試自動填充欄位之間的延遲
AutoDropDown 指定下拉選單是否會自動降低以響應使用者擊鍵
BevelEdges 使用該屬性可獲得或設定元件成斜角的邊緣
BevelInner 使用該屬性可指定內斜角是否具有凸、凹或平坦的外觀
BevelKind 使用該屬性可修改斜角的風格,即斜角的傾斜程度
BevelOuter 使用該屬性可指定外斜角是否具有凸、凹或平坦的外觀,外斜角直接顯示在邊框內和內斜角的外面
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
CharCase 確定組合框中文字的大小寫
Color 指定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
DropDownCount 指定下拉選單中顯示的最大專案數
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
ImeMode 設定該屬性可配置IME處理使用者按鍵的方法。對於亞洲語言字元,IME為前端輸入處理器
ImeName 設定該屬性可配置IME名稱
ItemHeight 指定下拉選單中專案的高度(以畫素為單位)
ItemIndex 指定所選項的索引
Items 提供對組合框列表部分中專案(字串)列表的訪問
MaxLength 指定使用者可以在組合框的編輯部分中鍵入的最大字元數
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
Sorted 確定組合框的列表部分是否按字母順序排列
Style 確定組合框的顯示樣式
TabOrder 確定父元件的切換順序
TabStop 使用該屬性可允許或不允許用Tab訪問元件
Text 包含與元件關聯的文字字串
TextHint 指定在組合框元件的編輯框中顯示為文字水印的文字
Visible 確定元件是否可見

# 10.1.1. AutoCloseUp 屬性

property AutoCloseUp: Boolean;
1

  確定當用戶選擇一個選項后是否自動關閉下拉選單。當TComboBox元件的AutoCloseUp屬性設定為False時,使用者輸入一個列表中己有的選項TComboBox元件不會自動關閉。當TComboBox元件的AutoCloseUp屬性設定為True時,使用者輸入一個列表中已有的選項后,TComboBox元件會自動關閉。

注意: 當AutoComplete屬性為True時,在TComboBox元件的文字框輸入字元時,下拉選單中將顯示與之匹配的內容。

# 10.1.2. AutoComplete 屬性

property AutoComplete: Boolean;
1

  該屬性用於設定TComboBox元件是否提供自動完成文字輸入的功能。AutoComplete屬性為False時,TComboBox不提供自動完成的功能,AutoComplete屬性為True時,TComboBox提供自動完成的功能。

# 10.1.3. AutoDropDown 屬性

property AutoDropDown: Boolean;
1

  該屬性決定TComboBox元件是否在使用者敲擊鍵盤時自動拉開。

# 10.1.4. CharCase 屬性

property CharCase: TEditCharCase;
type TEditCharCase = (ecNormal, ecUpperCase, ecLowerCase);
1
2

  該屬性確定在TComboBox中輸入字母的格式。

取 值 作 用
ecLowerCase 全部小寫
ecNonnal 正常
ecUpperCase 全部大寫

# 10.1.5. SelText 屬性

property SelText: string;
1

  SelText能夠返回TComboBox中使用者選擇的文字,示例程式碼如下:

procedure TMyHandler.ComboBox1KeyUp;
begin
  FThis.Edit1.Text := FThis.ComboBox1.SelText;
end;
1
2
3
4

  該屬性只當TComboBox元件獲得焦點時才能夠獲得所選中的文字,否則返回空字串。

# 10.1.6. Sorted 屬性

property Sorted: Boolean;
1

  該屬性用於決定列表是否按字母順序排列。將該屬性設定為True后能夠使列表中的選項重新按照字母順序排列。

# 10.1.7. Style 屬性

property Style: TComboBoxStyle;
type TComboBoxStyle = (csDropDown, csSimple, csDropDownList, csOwnerDrawFixed, csOwnerDraw Variable);
1
2
取 值 作 用
csDropDown 建立一個下拉選單框和一個編輯框,所有的選項字串都是同樣的高度
csSimple 建立一個編輯框和一個固定的列表
csDropDownList 建立一個沒有編輯框的下拉選單,使用者不能手動輸入文字,所有選項都是同等高度的字串
csOwnerDrawFixed 建立一個沒有編輯框的自繪下拉選單,每個選項的高度由ItemHeight屬性指定
csOwnerDrawVariable 建立一個沒有編輯框的自繪下拉選單,列表中的選項高度可變

# 10.1.8. DropDownCount 屬性

property DropDownCount: Integer;
1

  該屬性用於指定下拉選單最多顯示的選項數。DropDownCount屬性指定了下拉選單彈出顯示的選項列數,如果選項的數量多於DropDownCount屬性值時,列表的右邊會出現一個滾動條。

# 10.1.9. DroppedDown 屬性

property DroppedDown: Boolean;
1

  該屬性用於確定目前下拉選單是否己經打開並正在顯示,如果為True則表示已經打開,通常作為一個返回值使用。

# 10.1.10. Itemlndex 屬性

property Itemlndex: Integer;
1

  Itemlndex返回的是使用者選擇的選項的索引值,通過該值能夠返回使用者所選擇的選項。

# 10.1.11. Items 屬性

property Items: TStrings;
1

  利用該屬效能夠對TComboBox中的列表進行訪問。

# 10.1.12. MaxLength 屬性

property MaxLength: Integer;
1

  該屬性用於設定使用者最多能夠在編輯框中輸入的字元數。

# 10.1.13. SelLength 屬性

property SelLength: Integer;
1

  該屬性用於獲得使用者在TComboBox的編輯框中選擇的文字長度。

# 10.2. 事件

事 件 描 述
OnChange 當用戶修改TComboBox編輯框中的文字時觸發該事件
OnCloseUp TComboBox元件的下拉選單關閉時觸發該件
OnContextPopup 當用戶右擊元件或用其他方式(鍵盤)呼叫彈出功能表時觸發該事件
OnDropDown TComboBox元件的下拉選單彈出時觸發該事件
OnExit 輸入焦點從元件移至另一元件時產生該事件
OnMeasureltem 與csOwnerDrawVariable炎型的TComboBox元件中的選項需要重 新顯示時觸發該事件
OnSelect 當用戶在列表中選擇一個字串時觸發該事件
OnStartDock 當用戶開始拖動元件時產生該事件

# 10.3. 方法

方 法 描 述
AddItem 向下拉列表中新增選項
Clear 清除TComboBox列表中的所有選項和編輯框中的義字
ClearSelection 設定Itemlndex屬性為-1
CopySelection 複製己經選擇的選項到另一個組合框中
DeleteSelected 刪除TComboBox中所選擇的選項
Focused 確定TComboBox元件是否獲得焦點
MoveSelection 將所選擇的選項移動到另一個TComboBox中
SelectAll 選擇TComboBox編輯框中的所有文字

# 10.3.1. AddItem 方法

procedure Addltem(ltem: String; AObject: TObject);
1

  該方法用於向下拉列表中新增選項。

  • Item: 新增項的字串值。
  • AObject: 關聯的對象。

  向TComboBox中新增一個選項,關聯一個對象,並通過選項能夠讀取和操作對象。本應用是向列表中新增一些單選按鈕,通過選擇列表中的選項就能夠選擇指定的單選按鈕。

  FThis.ComboBox1.Clear;
  FThis.ComboBox1.AddItem('RadioButton1',FThis.RadioButton1);
  FThis.ComboBox1.AddItem('RadioButton2',FThis.RadioButton2);
  FThis.ComboBox1.AddItem('RadioButton3',FThis.RadioButton3);
1
2
3
4

# 10.3.2. Clear 方法

procedure Clear; override;
1

  通過該方法能夠淸除TComboBox列表中的所有選項和編輯框中的文字。

# 10.3.3. ClearSelection 方法

procedure ClearSelection; override
1

  該方法用於設定Itemlndex屬性為-1。清空TComboBox元件編輯框中的文字,並設定Itemlndex屬性為-1,即目前沒有選擇選項。

# 10.3.4. CopySelection 方法

procedure CopySelection (Destination: TCustomListControl); override;
1

  該方法用於將己經選擇的選項複製到另一個框中。

Destination: 複製選項的目標元件,該元件可以是任何Destination繼承而來的類實體。

# 10.3.5. DcleteSelected 方法

procedure DeleteSelected; override 
1

  該方法用於刪除在TComboBox中所選擇的選項。在運行程式時,如果想要將TComboBox列表中的選項刪除,可以使用DeleteSelected方法。

# 10.3.6. Focused 方法

function Focused: Boolean; override;
1

  該方法用於確定TComboBox元件是否獲得焦點。

# 10.3.7. MoveSelection 方法

procedure MoveSelection(Destination: TCustomListControl); virtual;
1

  該方法用於將所選擇的選項移動到另一個TComboBox中。

Destination: 移動選項的目標元件,該元件可以是任何Destination繼承而來的類實體。


# 11. TImageComboBox 元件

  TImageComboBox元件是一個編輯框,其上附有可滾動的下拉選單。使用者可以從列表中選擇專案。該元件中的選項是從資料庫中進行獲取的,使用者無法自行手動新增。

# 11.1. 屬性

  • TImageComboBox元件主要屬性
屬性 功能說明
Enabled 是否讓該元件響應滑鼠或按鍵操作
ItemIndex 設定預設選擇的選項

# 11.2. 方法

# 11.2.1. FillSQL

procedure FillSQL(ASQL:UnicodeString);
1

  該方法可將查詢到的結果回傳至選項中,需要注意回傳的內容格式需包含FID(主鍵欄位)以及FName(顯示的選項欄位)。例如下方的例子:

 FThis.ImageComboBox1.FillSQL('SELECT FReportID AS FID,FReportName AS FName FROM Dict_Report');
1

# 12. TScrollBar元件

  TScrollBar是一個Windows滾動條,用於滾動視窗,窗體或元件的內容。   使用TScrollBar向窗體新增獨立滾動條。許多元件都具有新增滾動條的屬性,滾動條是元件的一個組成部分(TControlScrollBar對像)。TScrollBar允許在使用者操作TScrollBar對像時滾動沒有整合滾動條或元件分組的元件。   當滾動條的雙向模式改變時,其座標系被反轉。從左到右模式的位置0是左側,從右到左模式的位置0是右側。

# 12.1. 屬性

  • TScrollBar元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Kind 指定滾動條是水平還是垂直
LargeChange 確定使用者單擊拇指選項卡兩側的滾動條或按PgUp或PgDn時位置的更改量
Max 指定滾動條表示的最大位置
Min 指定滾動條表示的最小位置
PageSize 指定縮圖選項卡的大小
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性。
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
Position 指示滾動條的當前位置
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
SmallChange 確定使用者單擊滾動條上的箭頭按鈕或按下鍵盤上的箭頭鍵時位置的更改量
TabOrder 確定父元件的切換順序
TabStop 使用該屬性可允許或不允許用Tab訪問元件
Visible 確定元件是否可見

# 12.2. 事件

  • TScrollBar元件主要事件列表
事件 何時觸發
OnScroll 當用戶使用滑鼠或鍵盤滾動滾動條時,將觸發該事件

# 12.3. 方法

  • TScrollBar元件主要方法列表
方法 功能描述
SetParams 一次性設定Position,Max和Min屬性值

# 13. TGroupBox 元件

  TGroupBox表示Windows組框。   TGroupBox元件表示標準Windows組框,用於對窗體上的相關元件進行分組。當另一個元件元件放置在組框內時,組框將成為該元件的父元件。

# 13.1. 屬性

  • TGroupBox元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
Caption 指定標識使用者元件的文字字串
Color 指定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DockSite 使用該屬性可確定元件是否為拖動和停靠操作目標
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
Padding 指定元件的填充
ParentBackground 確定元件是否使用父級的主題背景
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
TabOrder 確定父元件的切換順序
TabStop 使用該屬性可允許或不允許用Tab訪問元件
Visible 確定元件是否可見

# 14. TRadioGroup 元件

  TRadioGroup代表一組共同作用的單選按鈕。   TRadioGroup對象是一個特殊的組框,僅包含單選按鈕。直接放置在同一控制組件中的單選按鈕被稱為「分組」。當用戶單選按鈕時,其組中的所有其他單選按鈕都將取消選中。因此,只有將窗體放在單獨的容器(例如組框)中時,才能同時檢查窗體上的兩個單選按鈕。   要將單選按鈕新增到TRadioGroup,請編輯對像檢視器中的Items屬性。Items中的每個字串都會在組框中顯示一個單選按鈕,並將字串作為其標題。ItemIndex屬性的值確定目前選擇的單選按鈕。   通過設定「列」屬性,在單列或多列中顯示單選按鈕。   注意: 將組的BiDiMode設定為bdRightToLeft會自動翻轉其單選按鈕。FlipChildren方法無效。

# 14.1. 屬性

  • TRadioGroup元件主要屬性
屬性 功能說明
Align 確定元件在其父元件區內的對齊方式
Anchors 指定元件如何停放在父窗體中
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
Caption 指定標識使用者元件的文字字元
Color 指定元件的背景顏色
Columns 指定單選按鈕組中的列數
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
ItemIndex 指示目前選擇組中的哪個單選按鈕
Items 列出單選按鈕組中的單選按鈕
ParentBackground 確定元件是否使用父級的主題背景
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
TabOrder 確定父元件的切換順序
TabStop 使用該屬性可允許或不允許用Tab訪問元件
Visible 確定元件是否可見
WordWrap 指定單選按鈕的文字是否包裝以適合組的寬度

# 15. TPanel 元件

  TPanel實現了通用面板元件。   使用TPanel將空面板放在窗體上。面板具有在元件周圍提供斜面邊框的屬性,以及管理嵌入面板中的子元件放置的方法。   您還可以使用面板將元件組合在一起,類似於使用組框的方式,但使用斜面邊框(或無邊框)而不是組框輪廓。面板通常用於單個窗體內的元件組。如果您打算在其他窗體中使用相同的分組,則可能需要使用框架。   在編寫使用拖放的應用程式時,沒有邊框的面板可用作停靠點。

# 15.1. 屬性

  • TPanel元件主要屬性
屬性 功能說明
DockManager 指定元件的停靠管理器界面
Align 確定元件在其父元件區內的對齊方式
Alignment 確定標題在面板中的對齊方式
Anchors 指定元件如何停放在父窗體中
AutoSize 指定元件是否自動調整大小以容納其內容
BevelEdges 使用該屬性可獲得或設定元件成斜角的邊緣
BevelInner 確定面板內斜角的樣式
BevelKind 使用該屬性可修改斜角的風格,即斜角的傾斜程度
BevelOuter 確定面板外斜面的樣式
BevelWidth 確定面板內外斜面的寬度(以畫素為單位)
BiDiMode 為元件指定雙向模式,控制文字的順序,垂直滾動條的位置以及是否改變對齊方式
BorderStyle 確定圍繞面板元件周邊繪製的線條樣式
BorderWidth 指定外斜面和內斜面之間的距離(以畫素為單位)
Caption 指定標識使用者元件的文字字串
Color 指定元件的背景顏色
Constraints 使用該屬性可指定元件寬度和高度的最小值和最大值,當其包含最大或最小值時,重新調整元件的大小不能超出該限制
Ctl3D 確定元件是否具有三維(3-D)或二維外觀
DockSite 使用該屬性可確定元件是否為拖動和停靠操作目標
DoubleBuffered 確定元件的影象是直接渲染到視窗還是首先繪製到記憶體中的點陣圖
DragCursor 目前元件受拖動時游標的形狀
DragKind 獲取或設定元件是拖動操作還是拖動/停靠操作
DragMode 控制使用者何時可拖動元件
Enabled 控制組件是否響應滑鼠,鍵盤和計時器事件
Font 確定元件內顯示的文字字型
FullRepaint 確定面板在調整大小時重新繪製自身的方式
Locked 確定用作工具欄的面板是否被OLE伺服器提供的工具欄替換
Padding 指定元件的填充
ParentBackground 確定元件是否使用父級的主題背景
ParentBiDiMode 獲得或設定元件是否使用其父元件的BiDiMode屬性
ParentColor 元件要使用與其父元件相同的顏色
ParentCtl3D 確定元件是否使用父元件的Ctl3D屬性
ParentDoubleBuffered 獲得或設定元件是否使用父元件的DoubleBuffered屬性
ParentFont 確定元件是否使用父元件的Font
ParentShowHint 確保窗體中的所有元件以統一格式顯示幫助提示
PopupMenu 在元件上單擊游標右鍵時出現的彈出式功能表
ShowCaption 指定是否顯示面板元件的標題
ShowHint 確定當滑鼠指針暫時停留在元件上時元件是否顯示「幫助提示」
TabOrder 確定父元件的切換順序
TabStop 使用該屬性可允許或不允許用Tab訪問元件
UseDockManager 指定是否在拖放操作中使用停靠管理器
VerticalAlignment 設定標題的垂直位置
Visible 確定元件是否可見

# 16. TActionList 元件

  TActionList維護元件和元件可以使用的操作列表,例如功能表項和按鈕。   使用操作列表集中響應使用者命令(操作)。操作列表元件維護應用程式中客戶端元件可用的操作列表。從元件面板的標準頁面向窗體或數據模組新增操作列表元件。雙擊操作列表以顯示操作列表編輯器,您可以從中新增,刪除和重新排列操作。   注意:TActionList主要用於管理跨平臺應用程式中的操作。雖然始終可以使用TActionList維護應用程式的操作,但使用操作管理器可能更簡單。

# 16.1. 屬性

  • TActionList元件主要屬性
屬性 功能說明
Images 列出可用於操作列表中的操作的影象
State 當用戶觸發客戶端對像時,操作列表中的操作是否響應

# 16.2. 事件

  • TActionList元件主要事件列表
事件 何時觸發
OnChange 在操作列表中發生更改時觸發該事件。
OnExecute 客戶端對像在列表中觸發操作時觸發該事件。
OnStateChange 在OnChange事件之後觸發該事件。
OnUpdate 在應用程式空閑時觸發該事件,以便操作列表可以更新列表中的特定操作。

# 17. TBarCode 元件

  TBarCode元件用於展示條形碼。在使用該元件時,請先確認所需的條碼編碼格式。

# 17.1. 屬性

  • TBarCode元件主要屬性
屬性 功能說明
FitMode 位於Properities屬性組中,
ModuleColor 位於Properities屬性組中,獲取或設定條形碼元件的顯示顏色
ModuleWidth 位於Properities屬性組中,顯示元件的寬度倍數,用以放大或縮小顯示區域
RotationAngle 位於Properities屬性組中,設定元件的順時針旋轉角度
ShowText 位於Properities屬性組中,設定是否在條形碼下方顯示對應文字
Symbology 位於Properities屬性組中,設定條形碼的編碼格式,當選擇為QRCode時展示為二維碼
Text 設定條形碼顯示的數值資訊,根據編碼格式顯示的數值內容會有變化,當Symbology為QRCode時可輸入字元

  引用Properities屬性組中的屬性

  FThis.BarCode1.Properties.ShowText := True;
1

# 18. TWebBrowser 元件

  該元件用於呼叫瀏覽器進行網頁瀏覽。

# 18.1. 方法

# 18.1.1. Navigate 方法

procedure Navigate(const URL : WideString);
1

  該方法用於指定瀏覽器打開的網頁。

  FThis.WebBrowser1.Navigate('https://www.baidu.com');
1

# 19. TIdHTTPServer 元件

  該元件實現了一個簡易的HTTP伺服器的功能,用來實現對資料庫的連線功能。

# 19.1. 屬性

屬性 功能說明
DefaultPort 設定預設的服務埠

# 19.2. 事件

事件 描述
OnCommandGet 當獲取到命令時觸發該事件

# 20. TIdTCPClient 元件

  TIdTCPClient元件實現了TCP的客戶端部分功能,它封裝了一個完整的TCP客戶端,包括對套接字的支援。該元件可用來實現專門協議的元件的父類。

# 20.1. 屬性

屬性 功能說明
BoundIP 指定客戶端連線使用的本地IP地址,當與伺服器連線時使用此屬性值初始化繫結
BoundPort 指定本地連線中的首選埠號,即建立客戶連線的本地埠號的整數
Host 指定所要連線的遠端計算機的IP地址或計算機名稱
Intercept 該屬性是TidConnectionlntercept型別,允許擷取連線的讀寫操作
LocalName 本地計算機的主機名
MaxLineLength 最大連線數
Port 指定客戶端連線伺服器所使用的埠號
ReadTimeout 該屬性是一個只讀屬件,用於判斷Read方法是否超時
RecvBufferSize 指定連線所用的接收緩衝區的大小,預設為8192位元組
ReadLnTimedOut 該屬件是一個只讀屬性,用於判斷ReadLn方法是否超時
SendBufferSize 指定連線所用的寫緩衝區的最大位元組數,預設為32768位元組

# 20.2. 方法

方法 描述
Connect 連線資料庫,使用該方法之前必須指定Host屬性和Port屬性
CancelWriteBuffer 停止向緩衝區寫入數據
ClearWriteBuffer 清除寫緩衝區
Connected 判斷連線是否被啟用
CurrentReadBuffer 返回目前緩衝區中的數據
Disconnect 斷開與伺服器的連線
DisconnectSocket 關閉目前連線的套接字的繫結
InputLn 從伺服器讀取一行數據並返回該行數據
ReadBuffer 從緩衝區中讀取AByteCount長度的數據存入ABuffer參數中
ReadCardinal 從連線中讀取一個32位無符號整型值
Readlnteger 從緩衝區中讀取一個4位元組的二進制整型值
ReadLn 從緩衝區中讀取一行數據並作為返回值
ReadLnWait 返回單行數據。使用預設的分隔符和超時設定
ReadSmallint 從連線中讀取一個整型值,範圍在0-255之間
ReadStream 從緩衝區中讀取數據並存入AStream參數指定的流中,AByteCount 參數用來指定讀取的位元組數
ReadString 從緩衝區中讀取由ABytes參數指定位元組的字串
WaitFor 從連線中讀取數據直到遇到AString參數指定的字串為止
Write 將AOut參數指定的字串發送到連線,若參數為空則不發送
WriteBuffer 將緩衝區中的數據發送到連線
WriteCardinal 發送一個32位的無符號整型值到連線
WriteFile 將AFile參數指定的本地系統的檔案發送到連線,與AEnableTransferFile參數為True時,伺服器增加傳輸選項的功能
Writelnteger 將一個二進制整型值發送到連線
WriteLn 將AOut參數指定的字串發送到連線
WriteSmalllnt 將AValue參數中的一個小整型值發送到連線
WriteStream 將AStream參數指定的流發送到連線
WriteStrings 將AValue參數中的多行文字發送到連線

# 21. TIdTCPServer 元件

  該元件封裝了一個完整的多執行緒TCP伺服器。

# 21.1. 屬性

屬性 功能說明
Active 該屬性值為True時,伺服器開啟等待客戶端與其建立連線
Bindings 該屬性是包含伺服器分配套接字控制代碼的容器
CommandHandlers 指定伺服器使用的命令控制代碼
CommandHandersEnabled 指定在對等執行緒連線的執行過程中是否使用CommandHandlers
DefauItPort 指定伺服器與客戶端連線所用的埠號
Greeting 指定監聽執行緒接收到執行緒客戶連線時,發送到對等方的標識資訊
Intercept 該屬性用來識別套接字數據的控制代碼。該屬性允許程式開發者建立一個Tidlntercept的派生類對數據進行加密或解密、壓縮或解壓縮
IOHandler 指定監聽執行緒所使用的IOHandler
ImplicitThreadMgr 指定是否使用隱含的執行緒管理者為伺服器建立和釋放執行緒
ListenQueue 指定系統允許未解決的連線嘗試次數的最大值
MaxConnectionReply 指定連線到伺服器的對等連線數超過MaxConnections屬性值時使用的RFC訊息響應
MaxConnections 指定伺服器允許對等連線數的最大值
ReplyExceptionCode 指定在伺服器上下文中出現異常時使用的數字結果程式碼
ReplyTexts 指定伺服器實現中使用的協議響應
ReplyUndnownCommand 指定在客戶接收到未知命令時使用的RFC響應
ReuseSocket 指定監聽執行緒是否可以重用本地地址
TeminateWaitTiine 設定伺服器終止執行緒時所等待的時間
ThreadClass 在為伺服器建立新的執行緒時指定ThreadMgr使用的執行緒型別
ThreadMgr 給伺服器指定一個執行緒管理者併爲其提供擴充套件機制
Threads 它是一個容器,包含連線到伺服器的所有等同執行緒。這些執行緒是由監聽執行緒所產生的

# 21.1.1. 事件

事件 描述
OnAfterCommandHandler 使用CommandHandlers作為對等執行緒連線伺服器后觸發該事件
OnBeforeCommandHandler 使用CommandHandlers作為對等執行緒連線伺服器前觸發該事件
OnConnect 當有一個客戶端與伺服器連線時就會觸發該事件
OnDisconnect 當有一個客戶端與伺服器斷開連線時就會觸發該事件
OnException 對等執行緒的執行過程中出現異常時觸發該事件
OnExecute 與伺服器與客戶端建立一個新的連線時伺服器會為這個連線建立一個執行緒,該事件就是在這個執行緒運行時被觸發的
OnListenException 在監聽執行緒的執行過程中出現異常時觸發該事件
OnNoCommandHandler 無法定位命令控制代碼時觸發該事件
OnStatus 當連線狀態改變時觸發該事件
ThreadMgr 連線執行緒管理者所產生的事件

# 22. TFlying 元件

  TFlying元件是配合Flying使用的元件,將必要的列印配置傳遞給該元件的屬性,執行元件的方法即可將數據傳遞至列印伺服器進行列印操作。在使用該元件前請先閱讀Flying使用手冊。

# 22.1. 屬性

# 22.1.1. HTTPOptions

  使用 HTTP 列印模式時使用的屬性選項。其中的相關屬性專案說明如下:

屬性 說明
Host Flying列印服務端地址
Port Flying HTTP/WebSocket 列印服務監聽的埠號
SSL 是否啟用SSL

# 22.1.2. MailOptions

  郵件相關設定選項。

屬性 說明
Addr 接收郵箱的地址
Body 郵件的正文內容
Enable 是否啟用郵件發送的功能
Subject 郵件的標題

# 22.1.3. MQTTOptions

  使用 MQTT 列印模式時使用的屬性選項。其中的相關屬性專案說明如下:

屬性 說明
BrokerHost MQTT 服務端的地址
BrokerPort MQTT 服務端服務監聽的埠號
Enabled 設定是否啟用 MQTT 連線
PrintPwd 列印的密碼
PrintTopic 列印服務訂閱的主題名稱
SSL 是否啟用SSL
UserName MQTT 服務的使用者名稱
UserPwd MQTT 服務的密碼

# 22.1.4. PrintOptions

  列印服務的相關設定項。

屬性 說明
Data 輸入的列印數據,可通過 AddPrintData 方法自動產生
ExportFileType 設定導出的檔案型別
ExportFileUrl 設定導出檔案的URL
Preview 設定是否啟用檔案預覽
PrintCopies 設定檔案的列印份數
PrinterName 設定印表機的名稱,可通過 GetPrinerList 方法獲取印表機名稱
PrintOffsetX 列印偏移 X
PrintOffsetY 列印偏移 Y
PrintType 設定列印模式,可選 HTTP、MQTT、WebSocket
ReportName 設定列印的報表模板的名稱,可指定報表模板的檔名(*.fr3)或者報表模板的別名
ReportUrl 設定列印的報表的輸出地址
ReportVersion 報表版本號
TaskID 列印的任務ID,設定此項可用於區分不同列印客戶端的列印請求
Token 令牌,可用於列印客戶端的身份認證

# 22.1.5. WebSocketOptions

  使用 WebSocket 進行列印時的設定項。

屬性 說明
Authentication 是否啟用 WebSocket 身份認證
Compressed 是否啟用數據壓縮
Enabled 是否啟用 WebSocket 通訊連線
Host WebSocket 連線的主機的地址(Flying 服務端的地址)
Password WebSocket 使用身份認證連線時使用的密碼
Port WebSocket 服務監聽的埠號
SSL 是否啟用 SSL 連線
SSLPort 啟用SSL 連線時監聽的 WebSocket 服務埠號
URL WebSocket 服務路徑
UserName WebSocket 使用身份認證連線時使用的使用者名稱稱

# 22.2. 事件

# 22.2.1. OnReceivedError事件

procedure FlyingOnReceivedError(ASender: TObject; AError:String);
1

  當列印過程中出現錯誤時,可觸發此事件。AError 中包含了錯誤的提示資訊。

# 22.2.2. OnReceivedExport事件

procedure FlyingOnReceivedExport(ASender: TObject; AUrl:String);
1

  當列印包含輸出的檔案時觸發事件,AUrl 中包含了輸出檔案的路徑。

# 22.2.3. OnReceviedPrinter事件

procedure FlyingOnReceivedExport(ASender: TObject; APrinterList:String);
1

  當Flying 向客戶端發送印表機列表的資訊時觸發事件。APrinterList 中包含了印表機列表等資訊。

# 22.3. 方法

  • TFlying元件主要方法
方法 功能說明
GetPrinterList 獲取Flying服務端可用的印表機列表
Print 列印報表
ReportPrint 直接列印
ReportPreview 報表預覽
AddPrintData 列印數據組裝

# 22.3.1. GetPrinterList 方法

procedure GetPrinterList;
1

  該元件使用者獲取目前Flying列印伺服器中可用的印表機列表。可通過如下方式來獲取印表機列表:

procedure TMyHandler.Button2Click;
//載入印表機
begin
 FThis.Flying1.GetPrinterList;
end;


procedure TMyHandler.Flying1ReceivedPrinter;
//獲取印表機列表
begin
  FThis.ComboBoxPrinter.Items.CommaText := APrinterList;
  if FThis.ComboBoxPrinter.Items.Count <> 0  Then
  FThis.ComboBoxPrinter.ItemIndex := 0;
  FThis.ComboBoxPrinter.DroppedDown := True;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 22.3.2. ReportPrint方法

procedure ReportPrint;
1

  ReportPrint方法是呼叫Flying,進行報表列印。

//Pirnt
Procedure btnPrintOnClick(Sender: TObject);
Begin
  if FThis.Combobox1.Count = 0 Then exit;
  FThis.Flying1.PrinterName := FThis.Combobox1.Items[FThis.Combobox1.ItemIndex];//讀取印表機名稱
  FThis.RFDataSet1.openData;//打開數據
  FThis.Flying1.PrintOptions.Data.Clear;
  FThis.Flying1.AddPrintData(FThis.RFDataSet1,'A');//數據集轉Json
  FThis.Flying1.ReportPrint;//列印報表
End;

procedure TMyHandler.Flying1ReceivedExport;
//輸出
var
  F: TBaseForm;
begin
  if FThis.SwitchButton1.IsChecked then
  begin
    F := paxfunc.OpenForm('Form1');
    F.TagObject := FThis;
    TChrome(F.FindComponent('Chrome1')).Active := True;
    TChrome(F.FindComponent('Chrome1')).Uri := AUrl;
  end; 
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

# 22.3.3. ReportPreview方法

procedure ReportPreview;
1

  ReportPreview方法是呼叫Flying中介軟體,進行報表輸出,並回傳到客戶端顯示。

//Pirnt
Procedure btnPrintOnClick(Sender: TObject);
Begin
  if FThis.Combobox1.Count = 0 Then exit;
  FThis.Flying1.PrinterName := FThis.Combobox1.Items[FThis.Combobox1.ItemIndex];//讀取印表機名稱
  FThis.RFDataSet1.openData;//打開數據
  FThis.Flying1.PrintOptions.Data.Clear;
  FThis.Flying1.AddPrintData(FThis.RFDataSet1,'A');//數據集轉Json
  FThis.Flying1.ReportPreview;//報表預覽
  
procedure TMyHandler.Flying1ReceivedExport;
//輸出
var
  F: TBaseForm;
begin
  if FThis.SwitchButton1.IsChecked then
  begin
    F := paxfunc.OpenForm('Form1');
    F.TagObject := FThis;
    TChrome(F.FindComponent('Chrome1')).Active := True;
    TChrome(F.FindComponent('Chrome1')).Uri := AUrl;
  end; 
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

# 22.3.4. PrintPdf方法

procedure PrintPdf(AUrl: String);
1

  從網路地址獲取 PDF 檔案併發送至 Flying 服務端執行列印。

# 22.3.5. PrintPic方法

procedure PrintPic(AUrl: String);
1

  從網路地址獲取圖片檔案併發送至 Flying 服務端執行列印。

# 23. TPDFViewer 元件

  該元件用於顯示對應路徑下的pdf檔案。

# 23.1. 方法

# 23.1.1. LoadFromFile 方法

  打開PDF檔案以顯示。

  FThis.PDFViewer1.LoadFromFile('test.pdf');
1

# 24. TSwitchButton元件

  表示用於應用程式的可切換圖片按鈕。

  每當您需要為使用者提供開關狀態時,請使用TSwitchButton。

# 24.1. 屬性(Properties)

  • TSwitchButton元件主要屬性
屬性 功能說明
IsChecked 指定按鈕切換狀態
Bitmap 目前按鈕所顯示的狀態圖片
SwitchOffBmp 指定按鈕關閉時的狀態圖片
SwitchOffBmp 指定按鈕打開時的狀態圖片

# 24.1.1. IsChecked屬性

property IsChecked: Boolean read FIsChecked write SetIsChecked default True;
1

  指定切換圖片按鈕顯示代表不同狀態的圖片。

  IsChecked=True為顯示SwitchOffBmp圖片,False時顯示SwithchOnBmp圖片。

# 24.1.2. Bitmap屬性

property Bitmap: TBitmap read GetBitmap write SetBitmap;
1

  目前按鈕所顯示的狀態圖片。

# 24.1.3. SwitchOffBmp屬性

property SwitchOffBmp: TBitmap read GetBitmap write SetBitmap;
1

  指定按鈕關閉時的狀態圖片。

# 24.1.4. SwitchOffBmp屬性

property SwitchOffBmp: TBitmap read GetBitmap write SetBitmap;
1

  指定按鈕打開時的狀態圖片。

# 24.2. 事件(Events)

  • TfxSwitchButton元件主要事件
事件 何時觸發
OnSwitch 當Switch的IsChecked的值發生變化時觸發

# 24.2.1. OnSwitch事件

property OnSwitch: TNotifyEvent read GetOnSwitch write SetOnSwitch;
1

  TSwitchButton更改IsChecked的值時呼叫的事件處理程式

# 24.3. 示例(Code)

  TSwitchButton更改IsChecked的值時處理程式。

Procedure fxSwitch1OnSwitch(Sender: TObject);
Begin
  if fxSwitch1.IsChecked Then
     Showmessage('Switch On.')
  else
     Showmessage('Switch Off.');
End;
1
2
3
4
5
6
7
系統控制元件
對話方塊控制元件

← 系統控制元件 對話方塊控制元件→

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