Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.07.29;
Скачать: CL | DM;

Вниз

Помогите советом как отправить ListBox1.Items   Найти похожие ветки 

 
Sanek_sd   (2006-12-22 21:33) [0]

Приветствую... :)

Немного озадачился как при помощи indy по TCP отправить содержимое ListBox1.Items.Text???... приходит только первый итемс... я так понял причина в символе переноса строки... ну вроде как понимаю что ListBox1.Items.Text нада конвертнуть передать принять.. и опять конвертнуть...

но возможно есть другой способ.. если есть подскажите плиз.. пока не нагарадил.. :)

пасиб!..


 
Dmitrij_K   (2006-12-23 13:57) [1]

Например так

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
 StdCtrls, IdIOHandler, IdTCPServer, IdContext;

type
 TForm1 = class(TForm)
   Button1: TButton;
   IdTCPClient1: TIdTCPClient;
   IdTCPServer1: TIdTCPServer;
   ListBox1: TListBox;
   procedure Button1Click(Sender: TObject);
   procedure IdTCPServer1Execute(AContext: TIdContext);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure WriteStrings(sl:TStrings; IOHandle:TIdIOHandler);
var j:Integer;
begin
 IOHandle.WriteLn(IntToStr(sl.Count));
 for j:=0 to sl.Count-1 do
   IOHandle.WriteLn(sl[j]);
end;

procedure ReadStrings(sl:TStrings; IOHandle:TIdIOHandler);
var k,j : Integer;
begin
 sl.Clear;
 if TryStrToInt(IOHandle.ReadLn, k) then
 begin
   for j:=1 to k do
     sl.Add(IOHandle.ReadLn)
 end
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 IdTCPClient1.Host := "127.0.0.1";
 IdTCPClient1.Port := 12345;
 IdTCPClient1.Connect;
 ReadStrings(ListBox1.Items, IdTCPClient1.IOHandler);
 IdTCPClient1.Disconnect;
end;

procedure TForm1.IdTCPServer1Execute(AContext: TIdContext);
var sl : TStringList;
begin
 sl := TStringList.Create;
 sl.Add("1");
 sl.Add("2");
 sl.Add("3");
 sl.Add("4");
 sl.Add("5");
 sl.Add("xxx");
 WriteStrings(sl, AContext.Connection.IOHandler);
 sl.Free;
end;

end.



Страницы: 1 вся ветка

Текущий архив: 2007.07.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
2-1183625405
Аркадий
2007-07-05 12:50
2007.07.29
Как узнать текущую дату и время раздельно?


4-1171551012
dzuev
2007-02-15 17:50
2007.07.29
дурацкий вопрос - как возможно подключится к usb принтеру datamax


2-1183552580
Bad_B
2007-07-04 16:36
2007.07.29
Создать и уничтожить


2-1183463152
WASM
2007-07-03 15:45
2007.07.29
Как определить нажатые клавиши


15-1183013786
Ega23
2007-06-28 10:56
2007.07.29
Где скачать JediVCL?