Форум С++

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

Автор: XPyCT   (24.07.2008 в 10:13)
Может это поможет! когдато по примеру делал!

/---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Chat.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
 ServerSocket1->Active=true;
 // Делаем недоступную "Соединиться" (так как мы уже сервер)
 Button3->Enabled=false;
 // Делаем доступную "Отключиться" (понятно зачем)
 Button4->Enabled=true;
 Memo1->Lines->Add("Сервер создан");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
  // Присваиваем Клиенту Ай-Пи из Эдита
ClientSocket1->Address=Edit3->Text;
ServerSocket1->Active=true;
// Делаем недоступную "Создать" (так как мы коннектимся)
Button2->Enabled=false;
// Делаем доступную "Отключиться" (понятно зачем)
Button4->Enabled=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ServerSocket1ClientConnect(TObject *Sender,
      TCustomWinSocket *Socket)
{
Memo1->Lines->Add("Клиент подсоеденился");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ClientSocket1Connecting(TObject *Sender,
      TCustomWinSocket *Socket)
{
 Memo1->Lines->Add("Вы присоедены");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
////Это была обработка исключительных ситуаций , типа пустых строк ввода ;
if(Edit2->Text=="")
{
ShowMessage("Введите ваш ник");
return;
}
if(Edit1->Text=="")
{
ShowMessage("Введите текст который надо отправить");
return;
}
Memo1->Lines->Add(Edit2->Text+"::"+Edit1->Text);
if(ServerSocket1->Active==true)
{
 ServerSocket1->Socket->Connections[0]->SendText(Edit2->Text+"::"+Edit1->Text);
}
 else
 {
  ClientSocket1->Socket->SendText(Edit2->Text+"::"+Edit1->Text);
 }
  Edit1->Text="";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ClientSocket1Read(TObject *Sender,
      TCustomWinSocket *Socket)
{
Memo1->Lines->Add(Socket->ReceiveText());
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ServerSocket1ClientRead(TObject *Sender,
      TCustomWinSocket *Socket)
{
Memo1->Lines->Add(Socket->ReceiveText());
}
//----------------------------------------------


Ваше имя:

Пароль:

Цитировать

Используйте тэги для выделения текста:
Код: [code][/code]
Жирный: [b][/b]
Наклонный: [i][/i]
URL: [url][/url]

Сообщение:

Прикрепить: