Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Новый TTabSheet при OnAccept компонента TcpServer 
:(
    Опции темы
Serebrus
Дата 8.6.2009, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 333
Регистрация: 22.5.2007
Где: Ташкент

Репутация: нет
Всего: нет



Привет знатоки.

Хотелос бы сделать чат как mail agent (просто, мне нравится mail agent). Сходство с mail agent в том что при принятии сообщения от нового пользователя должно создаватся новый TTabSheet компонента PageControl.

Вот код:
Код

var
  Form1: TForm1;
  p: TStringList;
...
...
procedure TForm1.FormCreate(sender: TObject);
begin
p:=TStringList.Create;
end;
...
...
procedure TForm1.TcpServer1Accept(sender: TObject;
  ClientSocket: TCustomIpClient);
var
  s: string;
  DataThread: TClientDataThread;
  NT: array[1..100] of TTabSheet;
  MM: array[1..100] of TMemo;
  n: Integer;
  i: Integer;
  b: Boolean;
begin
  b:=False;
  for i:=1 to p.Count do
   if p.Strings[i-1]=ClientSocket.RemoteHost then
    begin
     b:=True;
     //ShowMessage('Find');
     Break;
    end;
  if not b then
   begin
    n:=PageControl1.PageCount+1;
    NT[n]:=TTabSheet.Create(Self);
    NT[n].PageControl:=PageControl1;
    NT[n].Caption:=ClientSocket.RemoteHost;

    MM[n]:=TMemo.Create(Self);
    MM[n].Parent:=NT[n];
    MM[n].Align:=alClient;
    p.Add(ClientSocket.RemoteHost);
   end;
...


но при принятии сообщения от нового пользователя ошибка:
user posted image
Помогите исправить

PM MAIL   Вверх
Romikgy
Дата 8.6.2009, 17:21 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 3
Всего: 146



Цитата(Serebrus @  8.6.2009,  14:37 Найти цитируемый пост)
for i:=1 to p.Count do

всегда делали от 0 до p.Count-1
Цитата(Serebrus @  8.6.2009,  14:37 Найти цитируемый пост)
NT: array[1..100] of TTabSheet;
  MM: array[1..100] of TMemo;

зачем массивы эти ?

Это сообщение отредактировал(а) Romikgy - 8.6.2009, 17:29


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0406 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.