delphi 10.4.2安卓端TSocket的实例代码
时间: 2023-10-11 09:05:37 浏览: 45
以下是一个基本的 Delphi 10.4.2 安卓端 TSocket 的实例代码:
```delphi
unit Unit1;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs, System.Win.ScktComp,
FMX.Layouts, FMX.Memo, FMX.StdCtrls;
type
TForm1 = class(TForm)
btnConnect: TButton;
btnSend: TButton;
edtIP: TEdit;
edtPort: TEdit;
edtMessage: TEdit;
Memo1: TMemo;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
procedure btnConnectClick(Sender: TObject);
procedure btnSendClick(Sender: TObject);
private
{ Private declarations }
FSocket: TClientSocket;
procedure OnSocketRead(Sender: TObject; Socket: TCustomWinSocket);
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.fmx}
procedure TForm1.btnConnectClick(Sender: TObject);
begin
Memo1.Lines.Add('Connecting...');
FSocket := TClientSocket.Create(nil);
FSocket.OnRead := OnSocketRead;
FSocket.Host := edtIP.Text;
FSocket.Port := StrToInt(edtPort.Text);
FSocket.Open;
end;
procedure TForm1.btnSendClick(Sender: TObject);
begin
if Assigned(FSocket) then
begin
FSocket.Socket.SendText(edtMessage.Text);
Memo1.Lines.Add('Sending: ' + edtMessage.Text);
end;
end;
procedure TForm1.OnSocketRead(Sender: TObject; Socket: TCustomWinSocket);
var
Str: string;
begin
Str := Socket.ReceiveText;
Memo1.Lines.Add('Received: ' + Str);
end;
end.
```
该代码创建了一个包含连接、发送和接收数据的简单客户端应用程序。用户可以通过编辑 IP 地址、端口和消息文本框来连接到指定的服务器,发送数据并接收响应。当客户端收到数据时,OnSocketRead 事件将被触发,并将收到的数据添加到 Memo1 控件中。