Показать сообщение отдельно
  #1  
Старый 22.11.2009, 01:31
Booo Booo вне форума
Новичок
 
Регистрация: 03.07.2008
Сообщения: 93
Репутация: 10
По умолчанию ПМ аля qip,icq...

Есть чат со списком пользователей ,хочу сделать пм(приватную переписку) в отдельное окно(вкладку аля квип с вкладками) в заголовке которого стоит ник того, с кем общаемся(аля квип ,много разных вкладок с кем мы общаемся)...
В общем ,как это реализовывается по моему :
Присылается сообщение\выделяется в переменную s имя того ,от кого это сообщение\сравнивается значение заголовка tabsheet с значением переменной s\если такой tabsheet существует ,то конкретно в нем записывается сообщение и ведеться диалог\иначе если tabsheet ,заголовок которого равен значению переменной s, нету,то динамически создается tabsheet в заголовке которого значение переменной s ,тут же динамически создаеться мемо(для отображения переписки),едита(для ввода сообщения),и кнопки "Отправить"(Для отправки сообщения)...
ВОт куски кода:
Код:
var
s,r:string;
i:string;
mem:tmemo;
sht:ttabsheet;
but:tbutton;
edt:tedit;
begin
s:=socket.receivetext;
PageControl := TPageControl.Create(Self);
  PageControl.Parent := Self;
for i:=0 to pagecontrol.pagecount -1 do
if pagecontrol.pages [i].caption <> s then
  begin
  tabsheet:=ttabsheet.Create(self);
  tabsheet.caption:=s;
  tabsheet.PageControl:=pagecontrol;
  end
else
{

      ЗДЕСЬ ПИШЕМ СООБЩЕНИЯ В МЕМО ,ТОГО ТАБШИТА ,ЗАГОЛОВОК КОТОРОГО РАВЕН ЗНАЧЕНИЮ ПЕРЕМЕННОЙ S

}


end;
Хотелось бы узнать у знатоков прокатит ли аткой вариант?если да есть просьбочка подредактировать немного мой код,и подогнать исходники ,которые помогут в решении этой проблемы.
Ответить с цитированием