📄 client.~pas
字号:
unit client;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
StdCtrls, IdAntiFreezeBase, IdAntiFreeze;
type
TForm1 = class(TForm)
IdTCPClient1: TIdTCPClient;
MemoCommands: TMemo;
Label1: TLabel;
ListServerInfo: TListBox;
ButtonConnect: TButton;
ButtonSend: TButton;
ButtonClear: TButton;
Edit1: TEdit;
Label2: TLabel;
Label3: TLabel;
IdAntiFreeze1: TIdAntiFreeze;
procedure ButtonConnectClick(Sender: TObject);
procedure ButtonClearClick(Sender: TObject);
procedure ButtonSendClick(Sender: TObject);
procedure IdTCPClient1Connected(Sender: TObject);
procedure IdTCPClient1Disconnected(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ButtonConnectClick(Sender: TObject);
begin
IdTCPClient1.Host:=Edit1.Text;
IdTCPClient1.Connect();
end;
procedure TForm1.ButtonClearClick(Sender: TObject);
begin
MemoCommands.Clear;
ListServerInfo.Clear;
end;
procedure TForm1.ButtonSendClick(Sender: TObject);
var
iCounter: integer;
sReadBuf: string;
begin
try
with IdTCPClient1 do begin
try
for iCounter := 0 to MemoCommands.Lines.Count - 1 do
begin
if SameText(MemoCommands.Lines[iCounter],'QUIT') then
begin
WriteLn(MemoCommands.Lines[iCounter]);
sReadBuf := ReadLn;
ListServerInfo.Items.Add(sReadBuf);
ButtonConnect.Enabled:=TRUE;
ButtonSend.Enabled:=FALSE;
ButtonClear.Enabled:=FALSE;
Disconnect;
end else
begin
WriteLn('ZipCode ' + MemoCommands.Lines[iCounter]);
ListServerInfo.Items.Add(MemoCommands.Lines[iCounter]);
sReadBuf := ReadLn;
if sReadBuf = '' then //如果返回的信息为空
begin
sReadBuf := '对不起,该邮编不存在!';
end;
ListServerInfo.Items.Add(sReadBuf);
ListServerInfo.Items.Add('');
end;
end;
except Disconnect; end;
end;
except ButtonConnect.Enabled := true; end;
end;
procedure TForm1.IdTCPClient1Connected(Sender: TObject);
begin
ButtonConnect.Enabled:=FALSE;
ButtonSend.Enabled:=TRUE;
ButtonClear.Enabled:=TRUE;
ListServerInfo.Items.Add(IdTCPClient1.readln);
end;
procedure TForm1.IdTCPClient1Disconnected(Sender: TObject);
begin
ButtonConnect.Enabled:=TRUE;
ButtonSend.Enabled:=FALSE;
ButtonClear.Enabled:=FALSE;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -