![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Наставьте на путь истинный. Пытаюсь отправить содержимое одной строки на сервер, чтобы тот принял и вставил данные в таком же виде (в разных столбцах). Получилось, но данные отправляются в 1 строку таблицы и при повторной отправке перезаписываются в той же строке.
Хочу сделать, чтобы при получении данных они вставлялись в новую строку (динамически созданную) - подскажите примером. Отправляю на сервер: Код:
procedure TForm1.Button3Click(Sender: TObject);
var
r: Integer; s:string;
begin
s:='';
with StringGrid1 do begin
for r := 0 to RowCount -2 do
s:=s+Rows[r].CommaText+#13#10;
end;
ClientSocket1.Socket.SendText(s);
end;Код:
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
st : TStringList;
r: Integer;
begin
st:=TStringList.Create;
st.Text:=Socket.ReceiveText;
with StringGrid1 do begin
RowCount:=st.Count;
for r := 0 to RowCount -1 do
Rows[r].CommaText:=st[r];
end;
st.free;
end; |
|
#2
|
||||
|
||||
|
Что-то здесь не так - говорите строку (какую?), передаете столбец, при приёме аналогично - куда вставлять не видно, попробуйте так: при передаче (вместо Rows нужно Cols)
Код:
... s:=''; for i:= 0 to StringGrid1.Cols[1].Count-1 do s:= s +StringGrid1.Cols[1][i]+#$D#$A; ... Код:
... StringGrid1.Cols[1]:=st; ... |