unit clent;interfaceuses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ScktComp;type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Label1: TLabel;
    ListBox1: TListBox;
    ListBox2: TListBox;
    Edit2: TEdit;
    Button1: TButton;
    ClientSocket1: TClientSocket;
    CheckBox1: TCheckBox;
    procedure CheckBox1Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;var
  Form1: TForm1;implementation{$R *.DFM}procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  if not clientsocket1.Active then
    clientsocket1.Address:=edit1.Text;
  if not checkbox1.Checked then
    listbox1.Clear;
//下面这行老是存在错误!
  clientsocket1.Active:=checkbox1.Checked;
//
end;procedure TForm1.Button1Click(Sender: TObject);
begin
  clientsocket1.Socket.SendText(edit2.text);
  edit2.Text:='';
end;procedure TForm1.ClientSocket1Read(Sender: TObject;
  Socket: TCustomWinSocket);
var
  server_text:string;
begin
  server_text:=socket.ReceiveText;
  if comparestr('^update',server_text)=0 then
    listbox1.Clear
  else
    begin
      if pos('$',server_text)=1 then
        listbox1.Items.Add(server_text)
      else
        listbox2.Items.Add(server_text)
    end;
end;procedure TForm1.FormCreate(Sender: TObject);
beginend;end.