помнится занимался подобным))
если делать чат, нужно чтобы строка из одних только пробелов не слалась..
привожу фрагмент своего кода, нимнога адаптированного под вашу задачу..
способ наверняка не лучший, но реализовано просто.. а главное - работает))
Цитата:
//================================================== =================//
function SendText(NewLine: Boolean; TextToSend: String): Boolean;
// SendText(СНовойСтроки; ТекстДляОтправки): Отправили или нет..
// Отправляем строку..
var
i, x: Integer;
begin
x:=0;
Result:=False;
// Производим подсчёт количества пробелов..
for i:=1 to Length(TextToSend) do
// Пройдёмся по тексту в поисках пробела..
begin
if TextToSend[i]=' ' then
// Если попали на пробел..
x:=x+1 else
x:=x; // .. можн этого не писать..
end;
// Если строка не состоит из одних пробелов, то добавляем её ..
if x<Length(TextToSend) then
begin
if NewLine=True then
// С новой строки..
begin
DoSend(TextToSend); // Отправляем текст..
OnReadCommand(TextToSend); // ..
Result:=True; // Текст отправлен..
end else
if NewLine=False then
// Продолжить ввод с прежнего места ..
begin
DoSendN(TextToSend); // Отправляем текст без перевода на новую строку..
OnReadCommand(TextToSend);
Result:=True; // Текст отправлен....
end else
exit;
end else
// Если в строке одни ттолько пробелы, то игнорируем команду..
if x=Length(TextToSend) then
exit else
exit;
end;
//================================================== =================//
|