操纵CB成立用户自己的网上聊天程序[VC/C++编程]
本文“操纵CB成立用户自己的网上聊天程序[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
网络是一个冲动人心的范畴,编写网络上的利用程序更是很多程序员神往的情节,但是编写网络程序需求掌握大量的网络传输协议、编程接口和WinSock32 API 函数,正因为如此,要完成从Windows程序员到Web程序员的改变不是一件易事.近来笔者成功的用C++ Builder 5.0 Enterprise 版编写出了网上聊天程序,特介绍以下:
1、原理:网络聊天工具需求通过TCP/IP协议,因此可以把网络聊天程序分为服务器端和客户器端两部份,此中 服务器端用以把程序转换成一个虚拟的 TCP/IP 服务器. 并且和指定的客户机成立衔接,在衔接成功后,向指定的客户器发送和接纳数据;客户器端把程序转换成一个虚拟的TCP/IP 客户器,并且向指定的服务器发出衔接信号,在衔接成功后,向指定的服务器发送和接纳数据.在C++ Builder 5.0 环境下服务器端和客户器端的功效辨别由TServerSocket控件和TClientSocket 控件加以实现.此中TCP/IP协议以包含在控件的属性中,因此只要精确填入属性,便可实现网上通讯.
2、具体实现:首先`在C++ builder 5.0 环境下成立一个Application ,并保存为Project1.在Form1 上增添以下控件,并设置相关属性,此中Memo2于显示对方传来的信息,此中Memo1用于显示传给对方的信息:
控件名称 属性 值
Tbevel Caption Bevel1
TSpeedButton Caption SpeedButton1
Tmemo Caption Memo1
Tmemo Caption Memo2
TMainMenu Caption MainMenu1
TServerSocket Caption ServerSocket1
TClientSocket Caption ClientSocket1
同时在 MainMenu1控件中增添 三个菜单项,其属性为
Name Caption
Connect 衔接
Disconncet 断开
Listin 监听
在Unit1 的Private中增添:
bool IsServer;
String Server;
在Connect 的Click句柄增添以下代码:
void __fastcall TForm1::ConnectClick(Tobject *Sender)
{
if (ClientSocket1->Active){ ClientSocke1t->Active = false;} // 判断能否以衔接,如衔接则断开衔接//
if (InputQuery("Computer to connect to", "添入要衔接的机械的IP地址:", Server))
{
if (Server1.Length() > 0)//判断用户能否已经添入//
{
ClientSocket-1>Host = Server;//设置要衔接的IP地址为用户指定的IP地址值//
ClientSocket1->Active = true;//举行衔接//
}
}
}
在Listen的Click句柄增添以下代码:
void __fastcall Form1 ::ListenClick(Tobject *Sender)
{
Listen->Checked = !Listen->Checked;
if (Listen->Checked)
ServerSocket1->Active = true;//服务器端监听来自客户器断的信号//
else
ServerSocket1->Active = false;
}
以上是“操纵CB成立用户自己的网上聊天程序[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |