愛招飛幫助手冊 愛招飛幫助手冊
  • 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
  • PinToo幫助主頁
  • 學習手冊

    • 基本入門

    • 功能介紹

    • 控制元件說明

      • 公共屬性
      • 標準控制元件
      • 系統控制元件
        • 1. TfxBroadcastReceiver元件
          • 1.1. 屬性(Properties)
          • 1.1.1. BroadcastNodeName屬性
          • 1.1.2. BroadcastServiceName屬性
          • 1.1.3. ReciverIsActive屬性
          • 1.2. 事件(Events)
          • 1.2.1. OnReceiver事件
          • 1.3. 方法(Methods)
          • 1.3.1. DoRegBroadcastReceiver方法
        • 2. TfxBroadcastSender元件
          • 2.1. 方法(Methods)
          • 2.1.1. DoSendMsg方法
        • 3. TfxBluetooth元件
          • 3.1. 方法(Methods)
          • 3.2. 事件(Events)
          • 3.2.1. OnReceiveData
        • 4. TfxBluetoothLE元件
        • 5. TfxIdHTTPServer元件
        • 6. TfxIdTCPClient元件
          • 6.1. 屬性(Properties)
          • 6.1.1. BoundIP屬性
          • 6.1.2. BoundPort屬性
          • 6.1.3. Host屬性
          • 6.1.4. Port屬性
          • 6.1.5. Socket屬性
          • 6.2. 方法(Methods)
          • 6.2.1. FastConnect方法
          • 6.2.2. Connected方法
          • 6.2.3. Disconnect方法
          • 6.2.4. SendData方法
        • 7. TfxTTS 元件
          • 7.1. 方法
          • 7.1.1. SpeakOut
        • 8. TfxThreadTimer 元件
          • 8.1. 屬性
          • 8.2. 事件
          • 8.2.1. OnTimer
      • 附加控制元件
      • 佈局控制元件
      • 形狀控制元件
      • 數據控制控制元件
      • 手勢控制元件
      • 儀表盤控制元件
      • 快速設計控制元件
      • 多媒體控制元件
      • 物聯網控制元件
      • 地圖控制元件
      • 數據表格控制元件
      • 特效控制元件
      • 動畫控制元件
      • SVG控制元件
      • IsoBean控制元件
    • 功能用法

    • 專用模板

    • 開發流程

    • 函式程式

  • 開發手冊

目录

系統控制元件

# PinToo 控制元件使用(系統元件)

  系統控制元件中包含了通訊連線使用的元件型別。

# 1. TfxBroadcastReceiver元件

  • 引用單元 SystemClasses

  廣播接收器元件。   可以接收設備發出的廣播資訊。

# 1.1. 屬性(Properties)

  • TfxBroadcastReceiver元件主要屬性
屬性 功能說明
BroadcastNodeName 指定廣播數據標籤
BroadcastServiceName 指定廣播動作標識
ReciverIsActive 指定是否啟用全覆蓋廣播功能

# 1.1.1. BroadcastNodeName屬性

  廣播數據標籤

fxBroadcastReceiver1.BroadcastNodeName := 'barcode_string';
1

# 1.1.2. BroadcastServiceName屬性

  廣播動作標識。

Android有許多廣播標識,列舉幾個如下:

  • 廣播:螢幕被關閉 Android.intent.action.SCREEN_OFF
  • 廣播:螢幕已經被打開 Android.intent.action.SCREEN_ON
  • 廣播:PDA掃瞄頭 android.intent.ACTION_DECODE_DATA
fxBroadcastReceiver1.BroadcastServiceName := 'android.intent.ACTION_DECODE_DATA';
1

# 1.1.3. ReciverIsActive屬性

# 1.2. 事件(Events)

  • TfxBroadcastReceiver元件主要事件
事件 何時觸發
OnReceiver 當接收到指定的廣播時觸發

# 1.2.1. OnReceiver事件

  接收到廣播數據后反饋。

PDA掃瞄資訊反饋
Procedure fxBroadcastReceiver1OnReceiver(AValue: string);
Begin
  AddItem(AValue);//數據處理,AddItem是自定義的方法
End;
1
2
3
4
5

# 1.3. 方法(Methods)

  • TfxBroadcastReceiver元件主要方法
方法 功能說明
DoRegBroadcastReceiver 註冊廣播接收器

# 1.3.1. DoRegBroadcastReceiver方法

  此方法必需在窗體指令碼運行后執行。

Procedure fxRunFrameAfterScriptRun(Sender: TObject);
Begin
//註冊廣播事件
  fxBroadcastReceiver1.DoRegBroadcastReceiver;
End;
1
2
3
4
5

# 2. TfxBroadcastSender元件

  • 引用單元 SystemClasses

  廣播發送元件。可自定義廣播標識、廣播數據標籤和內容。

# 2.1. 方法(Methods)

  • TfxBroadcastSender元件主要方法
方法 功能說明
DoSendMsg 發送廣播訊息

# 2.1.1. DoSendMsg方法

  演示發出一個自定義廣播。廣播標識為PinToo_ACTION_Test,數據標籤為BarCode,廣播內容為123456789的廣播。

fxBroadcastSender1.DoSendMsg('PinToo_ACTION_Test','BarCode','123456789');
1

# 3. TfxBluetooth元件

  • 引用單元 ufxBluetooth

  用作藍芽通訊,實現藍芽收發功能,可應用與藍芽電子稱、藍芽列印、藍芽聊天室等場景。

# 3.1. 方法(Methods)

  • TfxBluetooth元件主要方法
方法 功能說明
Init 初始化藍芽設備
DiscoverDevices 發現藍芽設備
PairedDevices 已配置藍芽設備
Services 獲取藍芽服務
Pair 配對藍芽設備
UnPair 取消藍芽配對
CreateServerSocket 建立服務通道
CloseServerSocket 關閉服務通道
FreeClientSocket 釋放服務通道
SendData 發送藍芽資訊
ReadData 接收藍芽資訊
ManagerConnected 獲取藍芽管理器狀態

# 3.2. 事件(Events)

  • TfxBluetooth 元件主要事件
事件 何時觸發
OnReceiveData 當接收到資訊時觸發

# 3.2.1. OnReceiveData

  接收到藍芽通訊數據后反饋。

//資訊反饋
Procedure Bluetooth1OnReceiverData(Sender: TObject;ServiceName,ServiceUUID,ReceiveData:string);
Begin
  Showmessage(ReceiveData)
End;
1
2
3
4
5

# 4. TfxBluetoothLE元件

  • 引用單元 SystemBluetoothComponents

  用作Bluetooth Low Energy框架類的主要功能的包裝器的元件,例如TBluetoothLEManager,TBluetoothGattServer,TBluetoothLEDevice或TBluetoothGattService。

該TfxBluetoothLE元件提供低功耗藍芽等功能:

  • 檢查正在運行您的應用程式的平臺是否支援運行低功耗藍芽客戶端,伺服器或同時運行這兩者,並讀取SupportsGattClient和SupportsGattServer的值。
  • 使用DiscoverDevices發現可訪問的遠端設備。
  • 使用DiscoverServices發現服務,並使用GetService或GetServices讀取服務。
  • 使用ReadCharacteristic,GetCharacteristic或GetCharacteristics從遠端設備讀取特徵。
  • 使用SubscribeToCharacteristic訂閱特徵,以便當特徵數據在提供特徵的遠端設備上更改時自動更新特徵數據。
  • 使用WriteCharacteristic在遠端設備上寫特徵,或者使用BeginReliableWrite和ExecuteReliableWrite作為原子操作。
  • 使用ReadDescriptor或GetDescriptors從遠端設備讀取描述符。
  • 使用WriteDescriptor將描述符寫入遠端設備。
  • 使用CreateService,CreateIncludedService,CreateCharacteristic,AddCharacteristic和UpdateCharacteristicValue提供服務和特徵。

  您還可以使用諸如CurrentAdapter,CurrentManager或GattServer之類的屬性來訪問Bluetooth Low Energy框架類的基礎實體,以實現細粒度控制或高級功能。


# 5. TfxIdHTTPServer元件

  • 引用單元 IdHTTPServer   一個基於INDY的HTTPServer元件。可以用它搭建HTTP伺服器。

下面我們用IdHTTPServer來實現簡單的WebService功能:

//啟用HTTPServer服務
Procedure fxButton1OnClick(Sender: TObject);
begin
  if not fxIdHTTPServer1.Active then
  begin
    try
      fxIdHTTPServer1.Bindings.Clear;
      fxIdHTTPServer1.DefaultPort := 8806;
      fxIdHTTPServer1.Active := True;
      fxMemo1.Lines.Insert(0, FormatDateTime('HH:NN:SS.ZZZ ', now) + 'HTTP列印服務 已啟動。')
    except
      fxMemo1.Lines.Insert(0, FormatDateTime('HH:NN:SS.ZZZ ', now) + 'HTTP列印服務 啟動失敗。')
    end;
  end;
end;

//關閉HTTPServer服務
Procedure fxButton2OnClick(Sender: TObject);
Begin
  fxIdHTTPServer1.Active := False;
  fxIdHTTPServer1.Bindings.Clear;
  fxMemo1.Lines.Insert(0, FormatDateTime('HH:NN:SS.ZZZ ', now) + 'HTTP列印服務 已停止。');
End;

//功能實現
Procedure fxIdHTTPServer1OnCommandGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
var
  ReportType:String;
  APathInfo,SQL:string;
  str:String;
begin
  if ARequestInfo.Command='POST' then
  begin
    AResponseInfo.CustomHeaders.Add('Access-Control-Allow-Origin:*');
    AResponseInfo.CustomHeaders.Add('Access-Control-Allow-Headers:*');
    AResponseInfo.CustomHeaders.Add('Access-Control-Allow-Method:*');
    
    APathInfo := ARequestInfo.Document;
    
    if APathInfo = '/opensql' then
    begin
       SQL :=ARequestInfo.Params.Values['SQL'];
       if SQL='' then
       begin
        str := ('{"status":"error","data":"SQL內容不能為空!"}');
        fxMemo1.Lines.Insert(0, FormatDateTime('HH:NN:SS.ZZZ ', now) + 'SQL內容不能為空!');
        AResponseInfo.ContentText := fxfun.URLEncode(str);
        AResponseInfo.WriteContent;
        Exit;
       end;
       
       fxRFDataSet1.OpenSQL(SQL);
       fxMemo1.Lines.Insert(0, FormatDateTime('HH:NN:SS.ZZZ ', now) + '接收到的SQL內容:'+SQL);
    end;
  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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56

# 6. TfxIdTCPClient元件

  • 引用單元 IdTCPClient   該控制元件包裝了一個完整的TCP客戶端。

# 6.1. 屬性(Properties)

  • TfxIdTCPClient元件主要屬性
屬性 功能說明
BoundIP 指定客戶端使用的IP地址
BoundPort 指定當前連線的本地埠號
Host 遠端主機名
Port 指定遠端主機埠號
Socket 連線時所用的socket

# 6.1.1. BoundIP屬性

property BoundIP: string;
1

  客戶端使用的IP地址。

# 6.1.2. BoundPort屬性

property BoundPort: Integer;
1

  目前連線的本地埠號。

# 6.1.3. Host屬性

property Host: string;
1

  遠端主機名。可以是IP地址,也可以是域名。

# 6.1.4. Port屬性

property Port: integer;
1

  遠端主機埠號。

# 6.1.5. Socket屬性

property Socket: TIdIOHandlerSocket;
1

  連線時所用的socket。

# 6.2. 方法(Methods)

  • TfxIdTCPClient元件主要方法
方法 功能說明
FastConnect 打開客戶端連線
Connected 目前連線是否可用
Disconnect 關閉連線
SendData 向連線寫入數據

# 6.2.1. FastConnect方法

procedure FastConnect;
1

  打開客戶端連線。

# 6.2.2. Connected方法

function Connected: Boolean; virtual;
1

  判斷目前連線是否可用 。

# 6.2.3. Disconnect方法

procedure Disconnect; virtual;
1

  關閉連線。

# 6.2.4. SendData方法

procedure SendData(const AOut: string);
1

  向連線寫入數據。

fxIdTCPClientLED.sendData('1'); //發送 1 指令給NodeMCU,點亮LED
1

# 7. TfxTTS 元件

  元件用於呼叫設備的TTS語音庫播報語音。

# 7.1. 方法

# 7.1.1. SpeakOut

procedure SpeakOut(AText: String);
1

  播放系統語音。

  fxTTS1.SpeakOut('Hello');
1

# 8. TfxThreadTimer 元件

  TfxThreadTimer 元件實現的功能與 TfxTimer 相同,與後者不同的是,前者的 OnTimer 是在另外一個執行緒中實現的,不佔用主執行緒,而後者的 OnTimer 是在主執行緒中實現的,如果在事件中執行了耗時的程式碼,則會導致主界面假死。

# 8.1. 屬性

屬性 功能說明
Enabled 是否啟用元件功能
Interval 設定定時器觸發的時間間隔,以ms為單位
RunOnMainThread 設定是否將定時器運行在主執行緒中

# 8.2. 事件

# 8.2.1. OnTimer

  設定定時觸發的事件。

標準控制元件
附加控制元件

← 標準控制元件 附加控制元件→

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