局域网内的聊天室一、需求分析1.客户需求分析客户要求聊天软件只在局域网内使用,要有美观、易操作的界面,通过拖动鼠标可以隐藏和显示主界面。在主界面上可以添加好友。一次可以与多个人聊天,聊天记录可以保存。分析客户的需求,形成文本需求说明书。这里只列出比较核心的部分。(1)只限于局域网内聊天。(2)美观的操作界面。(3)主界面可以隐藏和显示。(4)可以添加好友、网名和表情。(5)可以同时与多个人聊天。(6)可以保存和清存聊天记录。2.系统用例分析基于上面的需求分析,我们可以列出用户操作的模块,其中的每个模块对应一个功能,如图1所示。图1UML用例图二、系统设计对客户需求进行详细分析以后,接下来就可以进行系统设计了。1.系统目标利用VisualC++实现局域网内的聊天,从而达到沟通和交流的目的。2.开发设计思想(1)采用WinSocket进行局域网编程,具体采用点对点的方式。---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---添加好友添加网名添加表情发送清除记录保存记录用户(2)通过鼠标事件实现主界面的隐藏和显示。(3)通过双击方式在线好友聊天(4)一旦有消息发送过来,右下角的图标不停地闪烁,等待用户响应,只要用户在消息编辑框中输入消息,图标停止闪烁。(5)将用户添加的网名和表情写入到文件中,下次启动后,自动加入到组合框中。(6)将聊天记录保存到文件中,保存时的文件名包含系统时间。3.系统功能分析根据客户的需求,确定了系统的功能。本系统需要完成的功能如下:(1)添加好友,其中,必须包含用户的IP地址。(2)添加自定义的网名。(3)添加自定义的表情。(4)发送编辑好的信息。(5)保存聊天记录。(6)清除屏幕上的聊天记录。4.系统功能模块设计在系统功能分析的基础上,我们可以生成如图2所示的系统功能模块图。图2系统功能模块图三、创建应用程序1.创建应用程序框架根据需求分析可知,本系统是具有用户操作界面的应用程序,下面就创建一个基于对话框的应用程序,工程的创建步骤如下:第一步:进入到VisualC++集成开发环境中,选择“文件”“新建”菜单,打开“工程”选项卡,单击MFCAppWizard(exe),指定项目名为UltraMsg。单击“确定”按钮,进入到下个界面。第二步:选择“基本对话框”选项,如图3所示。第三步:接下来的步骤是连续单击“下一步”按钮,在最后一个画面单击“完成”按钮,至此就完成了应用程序框架的创建。第四步:删除对话框上由AppWizard生成的控件,重新添加5个控件,如图4所示。---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---聊天室添加好友添加好友添加好友发送保存记录清除记录图3指定要创建的应用程序的类型为基本对话框图4聊天室对话框及控件聊天室对话框上的5个控件的属性如表1所示。控件描述IDC_STATIC_PICPicture控件,用来显示位图IDC_STATIC_ONLINE_FRIEND静态文本控件,用来显示“在线好友”IDC_LIST_GOOD_FRIEND_HEAD_ICON列表框控件,用来显示好友的头像和网名IDC_BUTTON_ADD_GOOD_FRIEND按钮控件,单击它可以添加好友IDC_CHECK_CLOSE按钮控件,用来退出系统2.实现代码---本文来源于网络,仅供参考,勿照抄,如有侵权请联系删除---下面介绍实现本系统的部分代码,其余代码将在后面的4节“功能开发”中详细介绍。(1)添加CommDef.h文件,该文件中一般定义一些常量、枚举和结构体等。在CommDef.h文件中添加如下的代码:#include<afxtempl.h>#defineWM_TRAYICONWM_USER+101#defineWM_NOTIFYICONWM_USER+5#defineWM_ICON_NOTIFYWM_USER+110//定义按钮颜色constCOLORREFCLOUDBLUE=RGB(128,184,223);constCOLORREFWHITE=RGB(255,255,255);constCOLORREFBLACK=RGB(1,1,1);constCOLORREFDKGRAY=RGB(128,128,128);constCOLORREFDKBLUE=RGB(0,0,255);constCOLORREFPURPLE=RGB(255,0,255);constCOLORREFGREEN=RGB(0,255,0);constCOLORREFYELLOW=RGB(255,255,0);constCOLORREFRED=RGB(255,0,0);constCOLORREFORANGE=RGB(255,191,127);#defineNEAR_SIZE5//定义自动停靠有效距离#defineNEAR_SIDE0.1//窗体隐藏后在屏...