排行榜 创业指南

扫一扫关注有惊喜

TOP

如何用VB实现聊天讨论室和点对点会话
内容摘要:如何用VB实现聊天讨论室和点对点会话

  在一个单位内部或通过广域协议(如X.25)互联的行业内部都有几十或上万台计算机互联,用Intranet虽然可以建立聊天室,但实现点对点实时对话却比较困难。本人用Winsock和VB自制了一套聊天室和对话系统,特拿来供同行们参考。

  一·Winsock的主要属性、事件和方法

  Winsock是不可见控件,控件文件名是MSWINSCK.OCX,全称为Mcirosoftwinsockcontrol,使用时要将此控件调入工具箱。

  1·属性:①Protocol=0//使用TCP协议;

  ②RemoteHost//准备连接远程机的IP地址

  ③RemotePort//连接远程机的IP端口号(1024—65535之间)

  ④LocalPort//本地机监听IP端口号必须与呼叫机端口号相同

  2·方法:①connect//申请连接远程机

  ②listen//设置监听

  ③accept//建立实际连接

  ④senddata//发送数据

  ⑤getdata//接收数据

  ⑥close//关闭连接

  3·事件:①connectionrequest//一方请求连接时另一方产生

  ②connect//一方机接受连接时另一方产生

  ③close//一方机关闭连接时另一方产生

  ④dataArrival//一方发送数据另一方产生

  ⑤error//请求连接失败时产生

  二·制作方法

  ⑴在一工程中添加两个表单form1(模拟客户端)、form2(模拟服务器端)。

  form1中装入控件:

  控件名

  主要属性

  用途

  VB.Formform1

  caption=”雷萌聊天室”

  controlbox=0‘False

  模拟客户机表单

  VB.Textboxtext1

  multiline=-1‘True

  scrollbars=3‘Bath

  用于输入发往聊天室的信息

  VB.Textboxtext2

  locked=-1‘True

  multiline=-1‘True

  scrollbars=3‘Bath

  显示从聊天室发来的信息

  VB.Comboboxcombo1

  text=”10.84.234.11”‘任定默认地址

  放入常用的地址

  VB.Commandbuttoncomm1

  caption=”退出”

  最小化form1

  VB.Commandbuttoncomm2

  caption=”连接”

  请求与输入的地址连接

  VB.Commandbuttonsend

  caption=”发送”

  发送Text1中的内容

  VB.Labellabel1

  caption=“请在此输入发表的信息”

  Text1的框标

  VB.Labellabel2

  caption=“聊天室或对方的信息”

  Text2的框标

  VB.Labellabel3

  caption=”等待连接”

  显示连接状态信息

  VB.Labellabel4

  caption=”聊天室或对方地址”

  用于指示Combo1

  VB.Labellabel5

  caption=”操作:选地址连接,连接成功看到聊天室内容后再输信息发送”

  操作说明

  VB.Timertimer1

  interval=6000;enabled=false

  防止连接超时

  MSWinsocklib.winsocka

  用于数据传输

  form2中装入控件:

  控件名

  主要属性

  用途

  VB.Formform2

  caption=”接收信息”

  controlbox=0‘False

  模拟客户机表单

  VB.Commandbuttoncommand1

  caption=”返回”

  隐含Form2窗口

  VB.Commandbuttoncommand2

  caption=”对话”

  点对点会话时用此直接启动Form1

  VB.Textboxtext1

  locked=-1‘True

  multiline=-1‘True

  scrollbars=3‘Bath

  存放聊天或对话内容

  VB.Labellabel1

  caption=”接收的信息”

  Text1的框标

  MSWinsocklib.Winsocka

  用于监听

  MSWinsocklib.Winsockb

  用于传送聊天信息

  ⑵在Form1的各控件事件中加入如下代码:

  DimflagAsBoolean注释:连接状态变量

  PrivateSuba_Connect()

  flag=True

  EndSub

  PrivateSuba_DataArrival(ByValbytesTotalAsLong)

  DimiAsString

  a.GetDatai

  Label3.Caption="连接成功!"

  Comm2.MousePointer=0

  Form1.MousePointer=0

  Timer1.Enabled=False

  Ifi=Chr(0)Then

  Text2.Text="你是今天第一个进入本聊天室的客户。"+Chr(13)+Chr(10)

  Else

  Text2.Text=Text2.Text+i

  EndIf

  Text2.SelStart=Len(Text2.Text)

  Send.MousePointer=0

  Combo1.Enabled=False

  Comm2.Caption="断开连接"

  Text1.SetFocus

  EndSub

  PrivateSuba_Error(ByValNumberAsInteger,DescriptionAsString,ByValScodeAsLong,ByValSourceAsString,ByValHelpFileAsString,ByValHelpContextAsLong,CancelDisplayAsBoolean)

  flag=False

  Timer1.Enabled=False

  Comm2.MousePointer=0

  Form1.MousePointer=0

  MsgBox"网络连接失败!"

  Label3.Caption="等待连接"

  Combo1.Enabled=True

  Combo1.SetFocus

  a.Close

  Comm2.Caption="连接"

  EndSub

责任编辑:中宾科技

标签云: 名人百科网,品牌百科网 辅导班开课通知家长群 美术培训班搬迁通知 少儿美术开课通知 艺术培训班开课通知范文 美术班复课通知 培训班开课通知话术 画室开课通知 美术培训班开课通知模板 培训机构上课温馨提示 奶茶店成功营销方案 美容院顾客裂变方法 老客户转介绍激励方案 转介绍的方案和思路 美容院如何快速裂变 美容院如何玩裂变 裂变客户的十种方法 小型餐饮业营销计划方案 餐饮全年营销方案计划表 餐饮行业营销策划的特点 我开早餐店的真实经历做早餐生意的窍门开早餐店的惨痛经历未来早 线下宣传推广策划方案 产品线下推广活动方案 完整的婚礼策划方案 地推的60种方法 电商平台促销活动方案 线上推广的渠道有哪些 推广品牌的策划方案 地推活动策划方案创意 旅游景区营销推广方案
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到QQ空间
分享到: 
上一篇独立学院计算机专业应用型人才培.. 下一篇电子商务平台与ERP整合方法有哪些

相关阅读:

相关栏目

安全提示

最新文章

热门信息

siteMap.txt